用matlab解优化问题
1、fmincon作为优化问题的万能命令,既可以解决带约束的优化问题,有可以解决不带约束的优化问题。下面简单介绍一下。
2、fmincon命令的格式如下。
3、解释如下:
输出x为解的结果
输出fval为目标函数的最小值
输出exitflag为解的情况(大于0表示求解成功)
程序名用于写目标函数
x0为初始向量
A、AEQ为系数矩阵(A为不等式约束,AEQ为等式约束)
B、BEQ为常数项向量(B为不等式约束的常量,BEQ为等式约束的常量)
L为解的下限
U为解的上限
程序2用于非线性约束
4、下面用一个实例来说明。如下图
5、首先编写目标函数。在编辑器中编写好后,保存。
6、然后,将题目转换会命令语言。其中的
1 1 5
A=1 -2 ,B= 3;
AEQ= -3 2, BEQ=8;
-1 3
L= 4 ,U= 7;
初始值就随便填写符合上下限的数就行了,比如[1;1]
7、最后,在命令窗口中敲入命令。
8、或者这样写。
9、结果如下图。解释如下x=[0.4;4.6]表示x=0.4,y=4.6时目标函数在满足约束的情况下取得最小值fval=-19.16.其中exitflag=1>0表示结果正确。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:33
阅读量:60
阅读量:63
阅读量:55
阅读量:79