整数规划_分支定界法_MATLAB程序.doc
《整数规划_分支定界法_MATLAB程序.doc》由会员分享,可在线阅读,更多相关《整数规划_分支定界法_MATLAB程序.doc(6页珍藏版)》请在沃文网上搜索。
1、整数规划分支定界法MATLAB程序1.这种方法绝对能都解出答案,而且答案正确function x,val=fzdj(n,f,a,b,aeq,beq,lb,ub)x=zeros(n,1);x1=zeros(n,1);m1=2;m2=1;x1,val1=linprog(f,a,b,aeq,beq,lb,ub);if (x1=0)x=x1;val=val1;elseif (round(x1)=x1)x=x1;val=val1;elsee1=0,a,b,aeq,beq,lb,ub,x1,val1;e(1,1)=e1;zl=0;zu=-val1;while (zu=zl)for c=1:1:m2if (
2、m1=2)if (cell2mat(em1-1,c(1)=1)e1=1,0;e(m1,c*2-1)=e1;e(m1,c*2)=e1;continue;end;end;x1=cell2mat(em1-1,c(8);x2=zeros(n,1);s=0;s1=1;s2=1;lb1=cell2mat(em1-1,c(6);ub1=cell2mat(em1-1,c(7);lb2=cell2mat(em1-1,c(6);ub2=cell2mat(em1-1,c(7);for d=1:1:nif (abs(round(x1(d)-x1(d)0.0001)&(s=0)s=1;lb1(d)=fix(x1(d)+
3、1;if (a*lb1=b)s1=0;end;ub2(d)=fix(x1(d);if (a*lb2=b)s2=0;end;end;end;e1=s1,a,b,aeq,beq,lb1,ub1,0;e2=s2,a,b,aeq,beq,lb2,ub2,0;e(m1,c*2-1)=e1;e(m1,c*2)=e2;end;m1=m1+1;m2=m2*2;for c=1:1:m2if (cell2mat(em1-1,c(1)=0)x1,val1=linprog(f,cell2mat(em1-1,c( 2),cell2mat(em1-1,c(3),cell2mat(em1-1,c(4),cell2mat(e
4、m1-1,c(5),cell2mat(em1-1,c(6),cell2mat(em1-1,c(7);e1=cell2mat(em1-1,c(1),cell2mat(em1-1,c(2),cell2mat(em1-1,c(3),cell2mat(em1-1,c(4),cell2mat(em1-1,c(5),cell2mat(em1-1,c(6),cell2mat(em1-1,c(7),x1,val1;e(m1-1,c)=e1;end;z=val1;if (-z)(-zl)e1=1,0;e(m1-1,c)=e1;elseif (abs(round(x1)-x1)(-zu)zu=cell2mat(e
5、m1-1,c(9);end;end;end;for c=1:1:m2if (cell2mat(em1-1,c(1)=0)&(cell2mat(em1-1,c(9)=zu)x=cell2mat(em1-1,c(8);end;end;val=zu;end;2.这种方法是课本上的程序,但是不能解题,希望高手能将它改进function x,y=IntLp(f,G,h,Geq,heq,lb,ub,x,id,options)%整数线性规划分支定界法,可求解全整数线性或混合整数线性规划%y=min f*x subject to:G*x=h Geq*x=heq x为全整数%数或混合整数列向量%用法% x,y=
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 整数 规划 分支 定界 _MATLAB 程序
