没有合适的资源?快使用搜索试试~ 我知道了~
首页MATLAB优化工具箱解线性规划(线性规划、非线性规划)
资源详情
资源评论
资源推荐

用 MATLAB 优化工具箱解线性规划
命令:x=linprog(c,A,b)
2、模型:
命令:x=linprog(c,A,b,Aeq,beq)
注意:若没有不等式: 存在,则令 A=[ ],b=[ ]. 若没有等式约束, 则令 Aeq=[ ],
beq=[ ].
3、模型:
命令:[1] x=linprog(c,A,b,Aeq,beq, VLB,VUB)
[2] x=linprog(c,A,b,Aeq,beq, VLB,VUB, X0)
注意:[1] 若没有等式约束, 则令 Aeq=[ ], beq=[ ]. [2]其中 X0 表示初始点
4、命令:[x,fval]=linprog(…)
返回最优解x及x处的目标函数值 fval.
例 1 max
解 编写 M 文件小 xxgh1.m 如下:
c=[-0.4 -0.28 -0.32 -0.72 -0.64 -0.6];
A=[0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08];
b=[850;700;100;900];
Aeq=[]; beq=[];
vlb=[0;0;0;0;0;0]; vub=[];
[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)
例 2
min z=cX
bAXts ..
1、模型:

解: 编写 M 文件 xxgh2.m 如下:
c=[6 3 4];
A=[0 1 0];
b=[50];
Aeq=[1 1 1];
beq=[120];
vlb=[30,0,20];
vub=[];
[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub
例 3 (任务分配问题)某车间有甲、乙两台机床,可用于加工三种工件。
假定这两台车床的可用台时数分别为 800 和 900,三种工件的数量分别为 400、
600 和 500,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工
费用如下表。问怎样分配车床的加工任务,才能既满足加工工件的要求,又使
加工费用最低?
解 设在甲车床上加工工件 1、2、3 的数量分别为 x1、x2、x3,在乙车床上
加工工件 1、2、3 的数量分别为 x4、x5、x6。可建立以下线性规划模型:
编写 M 文件 xxgh3.m 如下:
f = [13 9 10 11 12 8];
A = [0.4 1.1 1 0 0 0
0 0 0 0.5 1.2 1.3];
b = [800; 900];

Aeq=[1 0 0 1 0 0
0 1 0 0 1 0
0 0 1 0 0 1];
beq=[400 600 500];
vlb = zeros(6,1);
vub=[];
[x,fval] = linprog(f,A,b,Aeq,beq,vlb,vub)
例 4.某厂每日 8 小时的产量不低于 1800 件。为了进行质量控制,计划聘请两种不同水平
的检验员。一级检验员的标准为:速度 25 件/小时,正确率 98%,计时工资 4 元/小时;二
级检验员的标准为:速度 15 小时/件,正确率 95%,计时工资 3 元/小时。检验员每错检一
次,工厂要损失 2 元。为使总检验费用最省,该工厂应聘一级、二级检验员各几名?
解 设需要一级和二级检验员的人数分别为 x1、x2 人,
则应付检验员的工资为:
因检验员错检而造成的损失为:
故目标函数为:
约束条件为:
线性规划模型:
编写 M 文件 xxgh4.m 如下:
c = [40;36];
A=[-5 -3];
b=[-45];
Aeq=[];
beq=[];
vlb = zeros(2,1);
剩余14页未读,继续阅读












安全验证
文档复制为VIP权益,开通VIP直接复制

评论6