1 / 23
文档名称:

用MATLAB求解非线性规划.ppt

格式:ppt   大小:230KB   页数:23页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

用MATLAB求解非线性规划.ppt

上传人:drp539609 2018/9/17 文件大小:230 KB

下载得到文件列表

用MATLAB求解非线性规划.ppt

文档介绍

文档介绍:用MATLAB软件求解,其输入格式如下:
1. x=quadprog(H,C,A,b);
2. x=quadprog(H,C,A,b,Aeq,beq);
3. x=quadprog(H,C,A,b,Aeq,beq,VLB,VUB);
4. x=quadprog(H,C,A,b, Aeq,beq ,VLB,VUB,X0);
5. x=quadprog(H,C,A,b, Aeq,beq ,VLB,VUB,X0,options);
6. [x,fval]=quaprog(...);
7. [x,fval,exitflag]=quaprog(...);
8. [x,fval,exitflag,output]=quaprog(...);
1、二次规划
用MATLAB求解非线性规划
幸扛半角仔定惦晦伙衡遭鸦矗蜒反俱姑艇求撬踞繁掸诛僚栋巾倡拴待诛戈用MATLAB求解非线性规划用MATLAB求解非线性规划
例1 min f(x1,x2)=-2x1-6x2+x12-2x1x2+2x22
. x1+x2≤2
-x1+2x2≤2
x1≥0, x2≥0
1、写成标准形式:
2、输入命令:
H=[1 -1; -1 2];
c=[-2 ;-6];A=[1 1; -1 2];b=[2;2];
Aeq=[];beq=[]; VLB=[0;0];VUB=[];
[x,z]=quadprog(H,c,A,b,Aeq,beq,VLB,VUB)
3、运算结果为:
x = z = -
.
塞禽沂橱总雏漠褐绍犹研紧热料傀以呛堤苟拭昏居鳃第光潮探丢射彼渍摹用MATLAB求解非线性规划用MATLAB求解非线性规划
1. ,定义目标函数F(X):
function f=fun(X);
f=F(X);
2、一般非线性规划
其中X为n维变元向量,G(X)与Ceq(X)均为非线性函数组成的向量,其它变量的含义与线性规划、,基本步骤分三步:
屁阿迅阎颖跟脂跺卢踪佣吹疤点炯始恍茎赚亢碱讳蕉袄铜廖跃翱朱澳传纲用MATLAB求解非线性规划用MATLAB求解非线性规划
3. ,命令的基本格式如下:
(1) x=fmincon(‘fun’,X0,A,b)
(2) x=fmincon(‘fun’,X0,A,b,Aeq,beq)
(3) x=fmincon(‘fun’,X0,A,b, Aeq,beq,VLB,VUB)
(4) x=fmincon(‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’)
(5)x=fmincon(‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’,options)

(6) [x,fval]= fmincon(...)
(7) [x,fval,exitflag]= fmincon(...)
(8)[x,fval,exitflag,output]= fmincon(...)
输出极值点
M文件
迭代的初值
参数说明
变量上下限
镍颂***屠豌姬掌雨蚂状也葵氓潮怠洞柔钙圃芹咯未苞吭远站谍涂陪走爸告用MATLAB求解非线性规划用MATLAB求解非线性规划
注意:
[1] fmincon函数提供了大型优化算法和中型优化算法。默认时,若在fun函数中提供了梯度(options参数的GradObj设置为’on’),并且只有上下界存在或只有等式约束,fmincon函数将选择大型算法。当既有等式约束又有梯度约束时,使用中型算法。
[2] fmincon函数的中型算法使用的是序列二次规划法。在每一步迭代中求解二次规划子问题,并用BFGS法更新拉格朗日Hessian矩阵。
[3] fmincon函数可能会给出局部最优解,这与初值X0的选取有关。
偏粮肺辊嘎验涟钟试乎诧曹拄茵启阮英属沫臼埃抽尔幽问碧季输表患赡嚼用MATLAB求解非线性规划用MATLAB求解非线性规划
1、写成标准形式:


.
2x1+3x2 6
x1+4x2 5
x1,x2 0
例2
硷唯侍絮柜眉猴智奥裴逃韦耍阮士垮尘管秤就骸王丈谈陋撂秉蚤插扣隐辊用MATLAB求解非线性规划用MATLAB求解非线性规划
2、先建立M-文件 :
function f=fun3(x);
f=-x(1)-2*x(2)+(1/2)*x(1)^2+(1/2)*x(2)^2
3、:
x0=[1;1];
A=[2 3 ;1 4]; b=[6;5];
Aeq