【数学建模】MATLAB应用实战系列(135)-优化算法非线性规划(附MATLAB代码)

前言

优化算法是指在满足一定条件下,在众多方案中或者参数中最优方案,或者参数值,以使得某个或者多个功能指标达到最优,或使得系统的某些性能指标达到最大值或者最小值。

现实问题中,很多都需要用到优化。可以说优化随处可见。在普通的函数寻找极值、空间配置、背包问题、旅行商问题中都需要用到优化算法。在机器学习中优化算法能够帮助我们在大量的迭代中快速训练模型。

01实例分析

上一篇介绍了简单的线性规划,现实中有很多问题都是非线性的,此篇来介绍一下目标函数以及约束都是非线性的求解方法。以下是非线性规划的表达式。

【数学建模】MATLAB应用实战系列(135)-优化算法非线性规划(附MATLAB代码)_第1张图片

02MATLAB求解

fmincon求解

fmincon是MATLAB的非线性规划求解函数

[x,fval]=fmincon(fun,x0,A,b,Aeq,Beq,LB,UB,nonlcon)

x:求得最优情况下变量的解

fval:求得最优目标值

x0:初始解

fun:目标函数(符号按最小值标准,若目标是求解机大值可以通过添加负号改成求极小值)

A:不等式约束的变量系数(符合按小于标准,如果是大于约束可通过加负

你可能感兴趣的:(数学建模,MATLAB)