前言
优化算法是指在满足一定条件下,在众多方案中或者参数中最优方案,或者参数值,以使得某个或者多个功能指标达到最优,或使得系统的某些性能指标达到最大值或者最小值。
现实问题中,很多都需要用到优化。可以说优化随处可见。在普通的函数寻找极值、空间配置、背包问题、旅行商问题中都需要用到优化算法。在机器学习中优化算法能够帮助我们在大量的迭代中快速训练模型。
01实例分析
上一篇介绍了简单的线性规划,现实中有很多问题都是非线性的,此篇来介绍一下目标函数以及约束都是非线性的求解方法。以下是非线性规划的表达式。
02MATLAB求解
fmincon求解
fmincon是MATLAB的非线性规划求解函数
[x,fval]=fmincon(fun,x0,A,b,Aeq,Beq,LB,UB,nonlcon)
x:求得最优情况下变量的解
fval:求得最优目标值
x0:初始解
fun:目标函数(符号按最小值标准,若目标是求解机大值可以通过