用MATLAB求解非线性规划

上传人:san****019 文档编号:22472336 上传时间:2021-05-26 格式:PPT 页数:23 大小:255.51KB
收藏 版权申诉 举报 下载
用MATLAB求解非线性规划_第1页
第1页 / 共23页
用MATLAB求解非线性规划_第2页
第2页 / 共23页
用MATLAB求解非线性规划_第3页
第3页 / 共23页
资源描述:

《用MATLAB求解非线性规划》由会员分享,可在线阅读,更多相关《用MATLAB求解非线性规划(23页珍藏版)》请在装配图网上搜索。

1、用 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,o

2、utput=quaprog(.);1、 二 次 规 划用 MATLAB求 解 非 线 性 规 划 例 1 min f(x1,x2)=-2x1-6x2+x12-2x1x2+2x22 s.t. 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 =0.6667 1.3333 z = -8.222

3、2 212121 622 1 1- 1 ),(min xxxxxxz T 21 2100 222 1 1 1 xx xxs.t. 1. 首 先 建 立M文 件fun.m,定 义 目 标 函 数F(X):function f=fun(X);f=F(X);2、 一 般 非 线 性 规 划 其 中X为n维 变 元 向 量 ,G(X)与Ceq(X)均 为 非 线 性 函 数 组 成的 向 量 , 其 它 变 量 的 含 义 与 线 性 规 划 、 二 次 规 划 中 相 同.用Matlab求 解 上 述 问 题 , 基 本 步 骤 分 三 步 : 3. 建 立 主 程 序.非 线 性 规 划 求 解

4、的 函 数 是fmincon,命 令 的 基 本 格式 如 下 : (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

5、)x,fval,exitflag,output= fmincon(.)输 出 极 值 点 M文 件 迭 代 的 初 值 参 数 说 明变 量 上 下 限 注 意 :1 fmincon函 数 提 供 了 大 型 优 化 算 法 和 中 型 优 化 算 法 。 默 认时 , 若 在fun函 数 中 提 供 了 梯 度 (options参 数 的GradObj设 置为 on) , 并 且 只 有 上 下 界 存 在 或 只 有 等 式 约 束 ,fmincon函数 将 选 择 大 型 算 法 。 当 既 有 等 式 约 束 又 有 梯 度 约 束 时 , 使 用 中 型算 法 。2 fmincon函

6、 数 的 中 型 算 法 使 用 的 是 序 列 二 次 规 划 法 。 在 每一 步 迭 代 中 求 解 二 次 规 划 子 问 题 , 并 用BFGS法 更 新 拉 格 朗 日Hessian矩 阵 。3 fmincon函 数 可 能 会 给 出 局 部 最 优 解 , 这 与 初 值X 0的 选 取有 关 。 1、 写 成 标 准 形 式 : s.t. 0054 632 21 21 xx xx 2100 xx 222121 21212min xxxxf 222121 21212min xxxxf 2x1+3x2 6 s.t x1+4x2 5 x1,x2 0例 2 2、 先 建 立M-文 件

7、 fun3.m: function f=fun3(x); f=-x(1)-2*x(2)+(1/2)*x(1)2+(1/2)*x(2)23、 再 建 立 主 程 序 youh2.m: x0=1;1; A=2 3 ;1 4; b=6;5; Aeq=;beq=; VLB=0;0; VUB=; x,fval=fmincon(fun3,x0,A,b,Aeq,beq,VLB,VUB)4、 运 算 结 果 为 : x = 0.7647 1.0588 fval = -2.0294 1 先 建 立M文 件 fun4.m,定 义 目 标 函 数: function f=fun4(x); f=exp(x(1) *(

8、4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1);)12424()( 22122211 xxxxxexf x x1+x2=0 s.t. 1.5+x1x2 - x1 - x2 0 -x1x2 10 0 例 32 再 建 立 M文 件 mycon.m定 义 非 线 性 约 束 : function g,ceq=mycon(x) g=x(1)+x(2);1.5+x(1)*x(2)-x(1)-x(2);-x(1)*x(2)-10; 3 主 程 序 youh3.m为 :x0=-1;1;A=;b=;Aeq=1 1;beq=0;vlb=;vub=;x,fval=fmincon(fu

9、n4,x0,A,b,Aeq,beq,vlb,vub,mycon)3. 运 算 结 果 为 : x = -1.2250 1.2250 fval = 1.8951 例 4 100 ,50 07 025 . 2min 21 22212 22211 21 xx xxXg xxXgts xxXf1 先 建 立M-文 件fun.m定 义 目 标 函 数: function f=fun(x); f=-2*x(1)-x(2);2 再 建 立 M文 件 mycon2.m定 义 非 线 性 约 束 : function g,ceq=mycon2(x) g=x(1)2+x(2)2-25;x(1)2-x(2)2-7;

10、 3. 主 程 序 fxx.m为 : x0=3;2.5; VLB=0 0;VUB=5 10; x,fval,exitflag,output =fmincon(fun,x0,VLB,VUB,mycon2) 4. 运 算 结 果 为 : x = 4.0000 3.0000fval =-11.0000exitflag = 1output = iterations: 4 funcCount: 17 stepsize: 1 algorithm: 1x44 char firstorderopt: cgiterations: 应 用 实 例 : 供 应 与 选 址 某 公 司 有 6个 建 筑 工 地 要

11、开 工 , 每 个 工 地 的 位 置 ( 用 平 面 坐 标 系a, b表 示 , 距 离 单 位 : 千 米 ) 及 水 泥 日 用 量 d(吨 )由 下 表 给 出 。 目前 有 两 个 临 时 料 场 位 于 A(5,1), B(2,7), 日 储 量 各 有 20吨 。 假 设 从料 场 到 工 地 之 间 均 有 直 线 道 路 相 连 。 ( 1) 试 制 定 每 天 的 供 应 计 划 , 即 从 A, B两 料 场 分 别 向 各 工 地 运送 多 少 吨 水 泥 , 使 总 的 吨 千 米 数 最 小 。 ( 2) 为 了 进 一 步 减 少 吨 千 米 数 , 打 算 舍

12、 弃 两 个 临 时 料 场 , 改 建 两个 新 的 , 日 储 量 各 为 20吨 , 问 应 建 在 何 处 , 节 省 的 吨 千 米 数 有 多 大 ? 工 地 位 置 ( a, b) 及 水 泥 日 用 量 d 1 2 3 4 5 6 a 1.25 8.75 0.5 5.75 3 7.25 b 1.25 0.75 4.75 5 6.5 7.25 d 3 5 4 7 6 11 ( 一 ) 、 建 立 模 型 记 工 地 的 位 置 为 (ai, bi), 水 泥 日 用 量 为 di, i=1,6;料 场 位 置 为(xj, yj), 日 储 量 为 ej, j=1,2; 从 料 场

13、 j向 工 地 i的 运 送 量 为 Xij。 目 标 函 数 为 : 21 61 22 )()(min j i ijijij byaxXf 约 束 条 件 为 : 2,1 , 6,2,1 ,6121 jeX idX ji ij ij ij 当 用 临 时 料 场 时 决 策 变 量 为 : Xij,当 不 用 临 时 料 场 时 决 策 变 量 为 : Xij, xj, yj。 ( 二 ) 使 用 临 时 料 场 的 情 形 使 用 两 个 临 时 料 场 A(5,1), B(2,7).求 从 料 场 j向 工 地 i的 运 送 量为 Xij, 在 各 工 地 用 量 必 须 满 足 和 各

14、 料 场 运 送 量 不 超 过 日 储 量 的条 件 下 , 使 总 的 吨 千 米 数 最 小 , 这 是 线 性 规 划 问 题 . 线 性 规 划 模型 为 : 21 61 ),(min j i ijXjiaaf 2,1 , 6,2,1 , s.t. 6121 jeX idX ji ij ij ij 其 中 22 )()(),( ijij byaxjiaa , i=1,2,6,j=1,2,为 常 数 。 设 X11=X1, X21= X 2, X31= X 3, X41= X 4, X51= X 5, X61= X 6X12= X 7, X22= X 8, X32= X 9, X42=

15、 X 10, X52= X 11, X62= X 12 编 写 程 序 gying1.m: cleara=1.25 8.75 0.5 5.75 3 7.25;b=1.25 0.75 4.75 5 6.5 7.75;d=3 5 4 7 6 11;x=5 2;y=1 7;e=20 20;for i=1:6 for j=1:2 aa(i,j)=sqrt(x(j)-a(i)2+(y(j)-b(i)2); endendCC=aa(:,1); aa(:,2);A=1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1; B=20;20;Aeq=1 0 0 0 0 0

16、 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 ;beq=d(1);d(2);d(3);d(4);d(5);d(6);VLB=0 0 0 0 0 0 0 0 0 0 0 0;VUB=;x0=1 2 3 0 1 0 0 1 0 1 0 1;xx,fval=linprog(CC,A,B,Aeq,beq,VLB,VUB,x0) 计 算 结 果 为 :x = 3.0000 5.0000

17、0.0000 7.0000 0.0000 1.0000 0.0000 0.0000 4.0000 0.0000 6.0000 10.0000fval = 136.2275 即 由 料 场 A、 B向 6个 工 地 运 料 方 案 为 : 1 2 3 4 5 6 料 场 A 3 5 0 7 0 1 料 场 B 0 0 4 0 6 10 总 的 吨 千 米 数 为 136.2275。 ( 三 ) 改 建 两 个 新 料 场 的 情 形 改 建 两 个 新 料 场 , 要 同 时 确 定 料 场 的 位 置 (xj,yj)和 运 送 量Xij, 在 同 样 条 件 下 使 总 吨 千 米 数 最 小

18、 。 这 是 非 线 性 规 划 问 题 。非 线 性 规 划 模 型 为 : 21 61 22 )()(min j i ijijij byaxXf 2,1 , 6,2,1 , . 6121 jeX idXts ji ij ij ij function f=liaoch(x)a=1.25 8.75 0.5 5.75 3 7.25;b=1.25 0.75 4.75 5 6.5 7.75;d=3 5 4 7 6 11;e=20 20;f1=0;for i=1:6 s(i)=sqrt(x(13)-a(i)2+(x(14)-b(i)2); f1=s(i)*x(i)+f1;endf2=0;for i=7

19、:12 s(i)=sqrt(x(15)-a(i-6)2+(x(16)-b(i-6)2); f2=s(i)*x(i)+f2;endf=f1+f2;设 X11=X1, X21= X 2, X31= X 3, X41= X 4, X51= X 5, X61= X 6 X12= X 7, X22= X 8, X32= X 9, X42= X 10, X52= X 11, X62= X 12 x1=X13, y1=X14, x2=X15, y2=X16 ( 1) 先 编 写 M文 件 liaoch.m定 义 目 标 函 数 : (2) 取 初 值 为 线 性 规 划 的 计 算 结 果 及 临 时 料

20、场 的 坐 标 : x0=3 5 0 7 0 1 0 0 4 0 6 10 5 1 2 7;编 写 主 程 序 gying2.m.clear% x0=2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2;x0=3 5 0 7 0 1 0 0 4 0 6 10 5 1 2 7;A=1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0;B=20;20;Aeq=1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0

21、 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0;beq=3 5 4 7 6 11;vlb=zeros(12,1);-inf;-inf;-inf;-inf;vub=;x,fval,exitflag=fmincon(liaoch,x0,A,B,Aeq,beq,vlb,vub) (3) 计 算 结 果 为 :x= 3.0000 5.0000 0.0707 7.0000 0 0.9293 0 0 3.9293 0 6.0000

22、 10.0707 6.3875 4.3943 5.7511 7.1867fval = 105.4626exitflag = 1 即 两 个 新 料 场 的 坐 标 分 别 为 (6.3875, 4.3943),(5.7511, 7.1867),由 料 场 A、 B向 6 个 工 地 运 料 方 案 为 : 1 2 3 4 5 6 料 场 A 3 5 0.0707 7 0 0.9293 料 场 B 0 0 3.9293 0 6 10.0707 总 的 吨 千 米 数 为 105.4626。 比 用 临 时 料 场 节 省 约 31 吨 千 米 . (4) 若 修 改 主 程 序 gying2.m

23、, 取 初 值 为 上 面 的 计 算 结 果 :x0= 3.0000 5.0000 0.0707 7.0000 0 0.9293 0 0 3.9293 0 6.0000 10.0707 6.3875 4.3943 5.7511 7.1867得 结 果 为 :x=3.0000 5.0000 0.3094 7.0000 0.0108 0.6798 0 0 3.6906 0 5.9892 10.3202 5.5369 4.9194 5.8291 7.2852fval =103.4760exitflag = 1总 的 吨 千 米 数 比 上 面 结 果 略 优 . (5) 若 取 初 值 为 : x0=3 5 4 7 1 0 0 0 0 0 5 11 5.6348 4.8687 7.2479 7.7499, 则 计 算 结 果 为 :x=3.0000 5.0000 4.0000 7.0000 1.0000 0 0 0 0 0 5.0000 11.0000 5.6959 4.9285 7.2500 7.7500fval =89.8835exitflag = 1总 的 吨 千 米 数 89.8835比 上 面 结 果 更 好 . 通 过 此 例 可 看 出 fmincon函 数 在 选 取 初 值 上 的 重 要 性 .

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!