matlab非线性规划问题

matlab非线性规划问题

ID:32179352

大小:107.00 KB

页数:8页

时间:2019-02-01

matlab非线性规划问题_第1页
matlab非线性规划问题_第2页
matlab非线性规划问题_第3页
matlab非线性规划问题_第4页
matlab非线性规划问题_第5页
资源描述:

《matlab非线性规划问题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一.非线性规划课题实例1表面积为36平方米的最大长方体体积。建立数学模型:设x、y、z分别为长方体的三个棱长,f为长方体体积。maxf=xy(36-2xy)/2(x+y)实例2投资决策问题某公司准备用5000万元用于A、B两个项目的投资,设x1、x2分别表示配给项目A、B的投资。预计项目A、B的年收益分别为20%和16%。同时,投资后总的风险损失将随着总投资和单位投资的增加而增加,已知总的风险损失为2x12+x22+(x1+x2)2.问应如何分配资金,才能使期望的收益最大,同时使风险损失为最小。建立数学模型:maxf=20x1+16x2-λ[2x1

2、2+x22+(x1+x2)2]s.tx1+x2≤5000x1≥0,x2≥0目标函数中的λ≥0是权重系数。由以上实例去掉实际背景,其目标函数与约束条件至少有一处是非线性的,称其为非线性问题。非线性规划问题可分为无约束问题和有约束问题。实例1为无约束问题,实例2为有约束问题。二.无约束非线性规划问题:求解无约束最优化问题的方法主要有两类:直接搜索法(Searchmethod)和梯度法(Gradientmethod),单变量用fminbnd,fminsearch,fminunc;多变量用fminsearch,fminnuc1.fminunc函数调用格式:

3、x=fminunc(fun,x0)x=fminunc(fun,x0,options)x=fminunc(fun,x0,options,P1,P2)[x,fval]=fminunc(…)[x,fval,exitflag]=fminunc(…)[x,fval,exitflag,output]=fminunc(…)[x,fval,exitflag,output,grad]=fminunc(…)[x,fval,exitflag,output,grad,hessian]=fminunc(…)说明:fun为需最小化的目标函数,x0为给定的搜索的初始点。opti

4、ons指定优化参数。返回的x为最优解向量;fval为x处的目标函数值;exitflag描述函数的输出条件;output返回优化信息;grad返回目标函数在x处的梯度。Hessian返回在x处目标函数的Hessian矩阵信息。例1:求程序:通过绘图确定一个初始点:[x,y]=meshgrid(-10:.5:10);z=8*x-4*y+x.^2+3*y.^2;surf(x,y,z)选初始点:x0=(0,0)x0=[0,0];[x,fval,exitflag]=fminunc(‘8*x(1)-4*x(2)+x(1)^2+3*x(2)^2‘,x0) 结果:

5、x=-4.00000.6667fval=-17.3333exitflag=1例2:程序:取初始点:x0=(1,1)x0=[1,1];[x,fval,exitflag]=fminunc(‘4*x(1)^2+5*x(1)*x(2)+2*x(2)^2‘,x0)结果:x=1.0e-007*-0.17210.1896fval=2.7239e-016exitflag=12.minsearch函数调用格式:x=fminsearch(fun,x0)x=fminsearch(fun,x0,options)x=fminsearch(fun,x0,options,P1,

6、P2)[x,fval]=fminsearch(…)[x,fval,exitflag]=fminsearch(…)[x,fval,exitflag,output]=fminsearch(…)[x,fval,exitflag,output,grad]=fminsearch(…)[x,fval,exitflag,output,grad,hessian]=fminsearch(…)说明:参数及返回变量同上一函数。对求解二次以上的问题,fminsearch函数比fminunc函数有效。3.fminbnd函数调用格式: [x,fval]=fminbnd(fun

7、,x1,x2,options)x=fminbnd(…)例5求mine-x+x2,搜索区间为(0,1)[x,fval]=fminbnd('exp(-x)+x.^2',0,1)x=0.3517fval=0.82724.多元非线性最小二乘问题:非线线性最小二乘问题的数学模型为:其中L为常数。调用格式:x=lsqnonlin(fun,x0)x=lsqnonlin(fun,x0,lb,ub)x=lsqnonlin(fun,x0,options)x=lsqnonlin(fun,x0,options,P1,P2)[x,resnorm]=lsqnonlin(…)[

8、x,resnorm,residual,exitflag]=lsqnonlin(…)[x,resnorm,residual,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。