关于“采样参考点方法”的阅读整理——自用


文献名称《Sampling Reference Points on the Pareto Fronts of Benchmark Multi-Objective Optimization Problems》

方法一:Das and Dennis’s Method

Das and Dennis’s Method是单位单纯形上均匀分布参考点采样最常用的系统方法,其在单位形状上定义的参考点形式如下: S j ∈ { 0 H , 1 H , ⋯   , H H } , ∑ j = 1 M S j = 1 {S_j} \in \left\{ {\frac{0}{H},\frac{1}{H}, \cdots ,\frac{H}{H}} \right\},\sum\limits_{j = 1}^M {{S_j} = 1} Sj{H0,H1,,HH},j=1MSj=1其中, H H H是目标的切分数量。
在这里插入图片描述
        上图 H H H为5,目标函数M为3的参考点坐标计算实例。在这里,我需要强调一下为什么取a,b而不是abcd四个,以及其他参数的取值原因。

       首先,说明图中0.2是因为在单位中将目标划分为5部分,所以每一小部分的取值为0.2;其次,若目标函数M为4的话,则将五部分均匀分配给M,其划分方式为1,1,1,2,则上图就变成了 S 1 , a , S 2 , b , S 3 , c , S 4 S_1,a,S_2,b,S_3,c,S_4 S1,a,S2,b,S3,c,S4,这里需要仔细推敲。然后最左边一列 x 1 x_1 x1其取值是有规律的,首先需要明白的是参考点的数量计算方式是 H = { M + P − 1 P } = C M + P − 1 P H = \left\{ \begin{array}{l} M + P - 1\\ P \end{array} \right\} = C_{M + P - 1}^P H={M+P1P}=CM+P1P共计21个参考点,即所有X(M-1维)的组合方式=6+5+4+3+2+1(高中排列组合没学好的童鞋自己补补),所以对应6个0,5个0.2,4个0.4以此类推。

       令 S 1 = a − 0 , S 2 = b − a , S 3 = 1 − b S_1=a-0,S_2=b-a,S_3=1-b S1=a0,S2=ba,S3=1b,这样 S 1 + S 2 + S 3 S_1+S_2+S_3 S1+S2+S3就满足了算法要求的 ∑ j = 1 M S j = 1 \sum\limits_{j = 1}^M {{S_j} = 1} j=1MSj=1,所以在M,P取其他值时,计算方式一样,只需要保持 ∑ j = 1 M S j = 1 \sum\limits_{j = 1}^M {{S_j} = 1} j=1MSj=1即可。Das and Dennis‘s Method的过程步骤如下:
1)X是所有 { 0 H , 1 H , ⋯ H + M − 2 H } \left\{ {\frac{0}{H},\frac{1}{H}, \cdots \frac{{H + M - 2}}{H}} \right\} {H0,H1,HH+M2}的(M-1)组合

2) x i j ∈ X , x i j = x i j − j − 1 H {x_{ij}} \in X,{x_{ij}} = {x_{ij}} - \frac{{j - 1}}{H} xijX,xij=xijHj1,这里这个公式很迷,我看了半天才理解明白。举个栗子,上图中 a = x 1 − 1 − 1 5 , b = x 2 − 2 − 1 5 a = {x_1} - \frac{{1 - 1}}{5},b = {x_2} - \frac{{2 - 1}}{5} a=x1511,b=x2521

3) { s i j = x i j − 0 , j = 1 s i j = x i j − x i ( j − 1 ) ,    1 < j < M s i j = 1 − x i ( j − 1 ) , j = M \left\{ \begin{array}{l} {s_{ij}} = {x_{ij}} - 0,\quad \quad j = 1\\ {s_{ij}} = {x_{ij}} - {x_{i(j - 1)}},\,\,1 < j < M\\ {s_{ij}} = 1 - {x_{i(j - 1)}},\quad j = M \end{array} \right. sij=xij0,j=1sij=xijxi(j1),1<j<Msij=1xi(j1),j=M

方法二:Deb and Jain’s method

       Deb and Jain’s Method这个采样方法其实是在Das and Dennis’s Method的基础上进行的改良,在文献中田野老师说当H<M的时候,没有中间点产生。因为,本人还没有去阅读Deb and Jain’s Method的文献,因此,对这个中间点的说法不是很理解、作者强调的是在此前况下,在das的基础上,增加内层的参考点,但是参考点的数量会翻倍,计算效率也会上升,博主在下周阅读结束Deb and Jain‘s Method后会将这部分补充完整(2021.09.23)。
Deb and Jain’s Method的过程步骤如下:
1)按照Das and Jain’s Method产生边界层的参考点
2)按照公式产生内层参考点
s i j ′ = 1 2 s i j + 1 2 M {s'_{ij}} = \frac{1}{2}{s_{ij}} + \frac{1}{{2M}} sij=21sij+2M1
在实践中,当m≤5时,采用Das and Dennis方法,其他情况采用Deb和Jain方法。

方法三:Mixture Uniform Design

       上述两种采样方法的缺点是参考点的数量受参数M和h的限制。相比之下,混合均匀设计提供了更灵活的采样方法,其中参考点的数量可以是任意的数字。简而言之,它生成均匀分布在(M−1)维超立方体上的n个点,然后将其转换为M维单位单纯形。具体来说,混合均匀设计过程包括以下四个步骤:
1)设 W 1 W_1 W1是所有小于等于N的正整数且与N互为质数的行向量, W 2 = ( 1 , 2 , , . . . , N ) W_2=(1,2,,...,N) W2=(1,2,,...,N)
2)设 W = m o d ( W 2 T W 1 − 1 , N ) + 1 W=mod(W_2^TW_1-1,N)+1 W=mod(W2TW11,N)+1
3)设X是一个M-1列的矩阵, X = W ( : , 1 : M − 1 ) X=W(:,1:M-1) X=W(:,1:M1),通过计算中心- L 2 L_2 L2-偏差( C D 2 CD_2 CD2)得到最大值的X的取值
4) { s i j = 1 N [ 1 − ( x i j ) 1 M − j ] ∏ k = 1 j − 1 ( x i k ) 1 M − k , 1 ≤ j < M s i j = 1 N ∏ k = 1 j − 1 ( x i k ) ( 1 M − k ) , j = M \left\{ \begin{array}{l} {s_{ij}} = \frac{1}{N}\left[ {1 - {{\left( {{x_{ij}}} \right)}^{\frac{1}{{M - j}}}}} \right]\prod\limits_{k = 1}^{j - 1} {{{\left( {{x_{ik}}} \right)}^{\frac{1}{{M - k}}}}} ,1 \le j < M\\ {s_{ij}} = \frac{1}{N}\prod\limits_{k = 1}^{j - 1} {{{\left( {{x_{ik}}} \right)}^{\left( {\frac{1}{{M - k}}} \right)}}} \quad \quad \quad \quad \quad \quad ,j = M \end{array} \right. sij=N1[1(xij)Mj1]k=1j1(xik)Mk1,1j<Msij=N1k=1j1(xik)(Mk1),j=M
其中, C D 2 CD_2 CD2用来测量N个点填充超立方体的点集X的多样性,其公式为: C D 2 ( X ) = [ ( 13 12 ) M − 1 − 2 2 − M N ∑ i = 1 N ∏ j = 1 M − 1 ( 2 + ∣ x i j − 0.5 ∣ − ∣ x i j − 0.5 ∣ 2 ) + 1 N 2 ∑ i , k = 1 N ∏ j = 1 M − 1 ( 1 + 0.5 ∣ x i j − 0.5 ∣ + 0.5 ∣ x k j − 0.5 ∣ − 0.5 ∣ x i j − x k j ∣ ) ] 1 2 C{D_2}\left( X \right) = {\left[ {{{\left( {\frac{{13}}{{12}}} \right)}^{M - 1}} - \frac{{{2^{2 - M}}}}{N}\sum\nolimits_{i = 1}^N {\prod\nolimits_{j = 1}^{M - 1} {\left( {2 + \left| {{x_{ij}} - 0.5} \right| - {{\left| {{x_{ij}} - 0.5} \right|}^2}} \right) + \frac{1}{{{N^2}}}\sum\nolimits_{i,k = 1}^N {\prod\nolimits_{j = 1}^{M - 1} {\left( {1 + 0.5\left| {{x_{ij}} - 0.5} \right| + 0.5\left| {{x_{kj}} - 0.5} \right| - 0.5\left| {{x_{ij}} - {x_{kj}}} \right|} \right)} } } } } \right]^{\frac{1}{2}}} CD2(X)=[(1213)M1N22Mi=1Nj=1M1(2+xij0.5xij0.52)+N21i,k=1Nj=1M1(1+0.5xij0.5+0.5xkj0.50.5xijxkj)]21

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值