非线性编程

解决非线性优化问题

非线性编程(NP)涉及最小化或最大化受约束约束,线性约束或非线性约束的非线性物镜函数,其中约束可以是不等式或相等的。工程中的示例问题包括分析设计权衡,选择最佳设计,计算最佳轨迹和投资组合优化计算金融中的模型校准。

不受约束的非线性编程是查找载体\(x \)的数学问题,它是非线性标量函数\(f(x)\)的局部最小值。无约束意味着没有限制\(X \)的范围

\ [\ min_x f(x)\]

以下算法通常用于无约束的非线性编程:

  • Quasi-Newton:使用混合的二次和立方线搜索程序和Broyden-Fletcher-Goldfarb-Shanno(BFGS)公式来更新Hessian矩阵的近似值
  • Nelder-Mead:使用仅使用功能值的直接搜索算法(不需要衍生物)并处理非光滑目标函数
  • 信任区域:用于无限制的非线性优化问题,对于可以利用稀疏性或结构的大规模问题特别有用

约束的非线性编程是找到传染媒介\(x \)的数学问题,该载体\(x \)最小化受到一个或多个约束的非线性函数\(f(x)\)。

解决受限的非线性编程问题的算法包括:

  • 内部点:对于具有稀疏性或结构的大规模非线性优化问题特别有用
  • 顺序二次编程(SQP):解决所有迭代的一般非线性问题和荣誉界限
  • 信任区域反思:解决束缚约束的非线性优化问题或仅限线性等分

有关非线性编程的更多信息,请参阅优化工具箱™

在问题不正常时,上面列出的算法查找本地最小值;除了Nelder-Mead之外,所有这些都需要平滑功能。全局优化工具箱具有无衍生的优化算法,可搜索全局最小,并使用平滑和非光滑功能。

也可以看看:优化工具箱全局优化工具箱线性规划二次编程整数编程多目标优化遗传算法模拟退火设计优化规定性分析凸优化