- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实 验 报 告
求解线性规划实验(运筹学与最优化方法,4 学时) 一 实验目的
掌握线性规划的求解,会用单纯形法法、大 M 法解线性规划。
二 实验内容
用单纯形法解线性规划:
min z ? ?2x
1
3x
2
? ?x ? x ? 2
?x 1 2
s.t.
? ? 2x ? 10
? 1 2
?3x ? x
?
1 2
? 15
?? x , x ? 0
1 2
用大 M 法解线性规划:
min z ? ?3x ? x
1 2
2x
3
? 3x
? 2x
? 3x ? 6
??s.t. ? 1 ? 2 2 ? x 3 ?4
?
?
x x ?
?1 2 3
?
?x , x , x ? 0
?
1 2 3
3.解下列线性规划,考虑其是哪一种特殊情况。
max z ? 50x
1
? 40x
2
?3x ? 5x
? 150
? 1 x 2
(1) ?
? 20
2
(无解)
s.t. ?8x ? 5x ? 300
?x 1 2
2? 1 ? x ? 50
2
?? x , x ? 0
1 2
max z ? 20x
1
?10x
2
? x ? 2
?(2) 1
?
s.t. ?
(没有边界)
? x 5
?x ,2 ? 0
?x
?
1 2
max z ? 30x
1
? 50x
2
?3x ? 5x ? 150
?(3) ? 1 x 2
?
? 20
(多个最优解)
s.t.
?8x
?1
?
2
5x
2
? 300
?? x , x ? 0
1 2
max z ? 50x
1
? 40x
2
?3x ? 5x ? 175
?(4) ? 1 x 2
?
? 20
s.t.
?
?8x
2
? 5x
? 300
?1 2
?
? x , x ? 0
1 2
三 实验步骤(算法)与结果
1 解:程序如下:
A=input(A=);
b=input(b=);
c=input(c=);
E=input(E(单位矩阵)=);
y0=input(y0=);
d=input(d=);
N=10000;
B=[A,E,b;c,d];
[m,n]=size(B); C=[c,d];
x=zeros(1,length(c)); for k=1:N
z=B(:,end); for j=1:n-1
t(j)=y0*B(:,j)-C(j);
end
for i=1:n-1
if t(i)==0sum(abs(B(:,i)))~=1
disp(此目标规划有无数个最优解)
end
end
minf=y0*z; [~,q]=max(t); W(k)=q;
for p=1:m-1
if B(p,W(k))=0 r(p)=N;
else r(p)=z(p)/B(p,W(k)); end
end
[~,p]=min(r);
y0(p)=C(q); B(p,:)=B(p,:)/B(p,q);
for i=1:m
if i~=p
B(i,:)=B(i,:)-B(p,:)*B(i,q);
end
end
if max(t)=0
break;
end
end
D=[B;-t -minf]; for i=1:n-1
if D(m+1,i)==0
for j=1:m
if D(j,i)==1
x(1,i)=D(j,n);
end
end
end
end
if min(B(1:m-1,n))==0
disp(此目标规划的解退化)
end x=x(1,1:length(c)),minf
运行结果如下:
DCXF
A=[-1,1;1,2;3,1]; b=[2,10,15];
c=[-2,-3];
E(单位矩阵)=[1,0,0;0,1,0;0,0,1]; y0=[0,0,0,0];
d=[0,0,0,0];
输出结果为:
x =
4 3
minf =
-17
解:程序如下:
function [x,minf]=DMF(A,c,b,baseVector,Mvector) sz=size(A);
nVia=sz(2); n=sz(1); xx=1:nVia; nobase=zeros(1,1); m=1;
if c=0
vr=find(c~=0,1,last); rgv=(A(:,(nVia-n+1):nVia))\b; if rgv=0
x=zeros(1,vr); minf=0;
else
disp(不 存在最优解); x=NaN;
minf=NaN; return;
end
end
for i=1:nVia
if(isempty(find(baseVector==xx(i),1))) nobase(m)=i;
m=m+1;
else end
end bCon=1; M=0;
B=A(:,baseVe
您可能关注的文档
- 十全大补汤的免疫增强作用.docx
- 十四种轴承的特点、区别和用途.docx
- 十万级级洁净区工作服的清洗和灭菌.docx
- 十万级洁净厂房验证方案.docx
- 十五夜望月习题.docx
- 十项常用临床护理操作流程.docx
- 十堰市中考满分作文不会变的是亲1.docx
- 十堰市中考满分作文记住这一天.docx
- 十堰市中小学教师职称晋升水平能力测试题附答案.docx
- 十种常考气温变化曲线和降水量柱状图.docx
- 第18讲 第17课 西晋的短暂统一和北方各族的内迁.docx
- 第15讲 第14课 沟通中外文明的“丝绸之路”.docx
- 第13课时 中东 欧洲西部.doc
- 第17讲 第16 课三国鼎立.docx
- 第17讲 第16课 三国鼎立 带解析.docx
- 2024_2025年新教材高中历史课时检测9近代西方的法律与教化含解析新人教版选择性必修1.doc
- 2024_2025学年高二数学下学期期末备考试卷文含解析.docx
- 山西版2024高考政治一轮复习第二单元生产劳动与经营第5课时企业与劳动者教案.docx
- 第16讲 第15课 两汉的科技和文化 带解析.docx
- 第13课 宋元时期的科技与中外交通.docx
文档评论(0)