zoukankan      html  css  js  c++  java
  • 求解二次规划问题——外点罚函数法/内点罚函数法

    外点罚函数法

    做法就是在可行域之外设置障碍,可解决等式和不等式约束问题,但求出的最优解往往不在可行域内。

    将约束条件转化成函数表达式的一部分,使新的函数式变为无约束的二次规划问题:

    约束条件转换:

     将等式和不等式转换后的式子融合:

    算法步骤:

    1 确定初始点x0,初始罚银子Mk(可取M1=1),设置精确度

    2 用解析法或者其他方法求解驻点,得到x

    3 当Mk*p(x)<精确度将此x作为最优解,若不满足将持续增大Mk

    (很多算例上直接在算出驻点表达式后,将Mk趋近无穷来求解)

    内点罚函数法

     做法就是在可行域内部设限制,靠近边缘的域设置较大的障碍,边缘的障碍无穷大,用来解决不等式约束问题,算出的解必在可行域内部

    同外点法一样将约束条件转化为函数的一部分,使之成为无约束二次规划问题:

    约束条件转化:

    倒数障碍函数和对数障碍函数(使用其中的一种就可以)

    算法步骤:和外点法类似,但当前解不满足精度要求时,rk会缩小,甚多算例将rk趋近0来求解函数最小值

  • 相关阅读:
    静静的看twittervision
    MSSQL中的随机函数
    紧张非封闭式开发中
    be my friend
    这个五一
    检讨
    SilverLight,有多少人关心呢?
    并查集模板题P3367 【模板】并查集
    并查集简单介绍
    约数之和模板题
  • 原文地址:https://www.cnblogs.com/niulang/p/9207568.html
Copyright © 2011-2022 走看看