行业新闻

多目标优化(三): 经典算法

线性加权法是多目标优化中使用比较广泛的方法,根据f_k(x)的重要程度,设定权重进行线性加权,将多个目标表示成:

\\begin{array}{c}\\min_{x}\\sum_{k=1}^{K}\\lambda_{k}f_k(x) \	ag{8}\\\\ \	ext{s.t.  }g_i(x) \\ge 0 ,i \\in[1,M ]\\\\ \	ext{    }h_j(x)=0 ,j \\in[1,L ]\\end{array}

从而转换为单目标的优化问题。 接下来我们给出在一定条件下,上述问题存在有效解的条件。

定理: 对于给定的\\lambda \\in \\Lambda^{++},则上述问题的最优解是MOO问题的有效解。其中:

\\Lambda^{++}=\\{   \\lambda | \\lambda_k >0 , i=1,2...K, \\sum_{k=1}^K \\lambda_k=1 \\}\\\\

详细证明参考[1]

  • 优点:实现简单,单目标优化问题有成熟的算法求解。
  • 缺点:权重\\lambda_k比较难确定,求出的解的优劣性没法保证。

除了上面介绍的线性加权法,主要目标法(也称\\epsilon-约束方法), 是一个应用广泛的算法

\\begin{array}{c}\\min_{x}f_p(x) \	ag{9}\\\\ \	ext{s.t. }f_k(x) \\le \\epsilon_k  ,k=1,...,K,且k\
ot={p}\\\\ \	ext{ }g_i(x) \\ge 0 ,i \\in[1,M ]\\\\ \	ext{   }h_j(x)=0 ,j \\in[1,L ]\\end{array}

\\epsilon-约束方法从K个目标中选择最重要的子目标作为优化目标,其余的子目标作为约束条件。 每个子目标,通过上界\\epsilon_k来约束。设上述约束条件得到的可行域为\\hat{D}

  • 主要目标法最优解都是MOO的弱有效解
  • 若主要目标f_p(x)是严格凸函数,可行域为\\hat{D}为凸集,则主要目标法的最优解是MOO问题的有效解。

一般情况下,界限值可以取子目标函数的上界值:

\\min \\{ f_k| f_k(x)   ,k=1,...,K,且k\
ot={p}\\}\\le \\epsilon_k \	ag{10}\\\\

这种取法可以使得某些f_k(x)留在可行域\\hat{D}内,并且 \\hat{D}内有较多的点靠近f_k(x)的最优解。

主要目标法的优缺点对比

  • 优点:简单易行,保证在其他子目标取值允许的条件下,求出主要目标尽可能好的目标值。
  • 缺点:\\epsilon_k如果给的不合适的话,新的可行域\\hat{D}可能为空集。

逼近目标法是让决策者提出一个目标值f^0=(f_{1}^{0}, f_{2}^{0},...,f_{K}^{0}),使得每个目标函数f_k(x)都尽可能的逼近对应的目标值:

\\begin{array}{c}&L(f(x),f^0)&=& ||f(x)-f^0||_2^{\\lambda}\	ag{11}\\\\ & &=&\\sum_{k=1}^{K}\\lambda_k (f_k(x) - f_k^0)^2 ,\\lambda \\in  \\Lambda^{++}\\end{array}

逼近目标法和机器学习中的损失函数类似,是一个单目标优化问题,可以通过经典的方法进行求解。这里求解的最优解和有效解及弱有效解没有直接的联系;逼近目标法反映了决策者希望的目标值。


欢迎关注微信公众号了解更多内容:simplex101,分享多目标优化、线性与非线性规划相关内容。






平台注册入口