非线性规化模型

如果目标函数或约束条件中包含非线性函数,这种规划问题为非线性规化问题。
非线性规化(目前)没有适用于各种问题的一般算法,各个方法都有自己的特定使用范围。

与线性规化的区别
如果线性规化最优解存在,则其最优解只能在其可行域的边界上达到(特别是顶点),而非线性规化的最优解如果村子可能在其可行域的任意一点达到。

非线性规化的Matlab解法

Matlab中的非线性规化的数学模型写成下面这种形式:
非线性规化[数学建模]
式中:f(x) 为标量函数;A,b,Aeq,beq,lb,ub为相应维数的矩阵和向量;c(x),ceq(x)为非线性向量函数。
Matlab中的命令是:
[x,fval] = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)

无约束问题

多元函数->求驻点->Hessian阵->验证

Matlab工具箱中,用于求解无约束极小值问题的函数有fminunc和fminsearch。
fminsearch只能求出给定的初始值附近的一个极小值。

函数零点和方程组的解

约束极值问题

带有约束条件的极值问题
简化问题,可采用以下方法:

  • 约束问题——>无约束问题
  • 非线性规化问题——>线性规化
  • 复杂问题——>较简单问题

库恩-塔克条件:
非线性规化[数学建模]

二次规划

若某非线性规化的目标函数为自变量x的二次函数,约束条件又全是线性的,就称为二次规划。
非线性规化[数学建模]
Matlab中求解二次规划的命令是:
[x,fval] = quadprog(H,f,A,b,Aeq,beq,lb,ub,x0,options)

罚函数法

利用罚函数法,可将非线性规化问题的求解,转化为求解一系列无约束极值问题,也成为序列无约束最小化技术(Sequential Unconstrained Minization Technique,SUMT)。
利用问题中的约束函数作为适当的罚函数,由此构造出带参数的增广目标函数,把问题转化为无约束非线性规划问题。

外罚函数法
内罚函数法

可参考这篇博客理解

相关文章:

  • 2021-06-26
  • 2022-02-08
  • 2021-04-11
  • 2022-02-08
  • 2022-02-08
  • 2021-06-07
  • 2022-02-08
  • 2022-02-08
猜你喜欢
  • 2021-07-30
  • 2021-04-17
  • 2021-09-19
  • 2022-02-08
  • 2021-04-26
  • 2022-02-08
  • 2021-04-02
相关资源
相似解决方案