如何用matlab求解非线性约束优化问题
1个回答
展开全部
方法/步骤
此题的问题描如下图。由于本经验主要是谈非线性约束下的最优化问题,对于其他线性约束就不再考虑。
然后启动matlab。新建一个函数文件,用来写目标函数。
在编辑器窗口中写入我们要求的目标函数,并保存,注意使函数名与文件名相同。
然后再新建一个函数文件,用来编写非线性约束条件。步骤及其注意事项同上。额外需要注意的是,需要将两个函数文件放在同一个文件夹中。
最后,在命令行窗口处写入fmincon命令。此处需要注意的是,对于没有的线性约束条件的位置药用空矩阵代替,并且初始条件需要满足非线性约束条件(本例中写的是[1,2])。
敲下键盘上的enter建,结果得出。可以发现exitflag=1是大于0的,所以结果正确。
此题的问题描如下图。由于本经验主要是谈非线性约束下的最优化问题,对于其他线性约束就不再考虑。
然后启动matlab。新建一个函数文件,用来写目标函数。
在编辑器窗口中写入我们要求的目标函数,并保存,注意使函数名与文件名相同。
然后再新建一个函数文件,用来编写非线性约束条件。步骤及其注意事项同上。额外需要注意的是,需要将两个函数文件放在同一个文件夹中。
最后,在命令行窗口处写入fmincon命令。此处需要注意的是,对于没有的线性约束条件的位置药用空矩阵代替,并且初始条件需要满足非线性约束条件(本例中写的是[1,2])。
敲下键盘上的enter建,结果得出。可以发现exitflag=1是大于0的,所以结果正确。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询