数学实验测试软件,数学软件MATLAB实验报告-实验七.doc

PAGE / NUMPAGES

实验七:最优化方法的MATLAB实现

实验目的与要求:

能利用MATLAB的最优化工具箱实现了解决不同类型最优化问题。

实验内容:

对边长为3m的正方形铁板,在4角处剪去相等的正方形以制成方形无盖水槽,问如何剪法使水槽的容积最大?(要求建立模型,利用MATLAB软件求解)

设剪去的正方形边长为x,则水槽的容积为:

f(x)=(3-2x)2x,(0

程序代码:

clear;clc;

[x,fval,exitflag]=fminbnd(@(x)-(3-2*x).^2*x,0,1.5)

所以,剪掉的正方形的边长为0.5m时水槽的容积最大,最大值为2m2。

某厂生产甲、乙两种产品,已知制成一吨产品甲需要资源A3吨,资源B4m3;制成一吨乙产品需要资源A2吨,资源B6m3,资源C7个单位。若一吨产品甲和乙的经济值分别为7万元和5万元,三种资源的限制量分别为90吨、200m3和210个单位。试决定应生产这两种产品各多少吨才能使创造的总经济价值最高?(要求建立模型,利用MATLAB软件求解。)

程序代码:

f=[-7 -5]';

A=[3 2;4 6];

b=[90;200];

lb=zeros(2,1);

ub=[50;30];

[x,fval,exitflag]=linprog(f,A,b,[],[],lb,ub)

1

所以,生产甲产品14吨,乙产品24吨收益最高。

最小化函数:

程序代码:

x0=[1,1];

[x,fval,exitflag]=fminunc('3*x(1)^2+2*x(1)*x(2)+x(2)^2',x0)

求解下面的最优化问题:

目标函数

约束条件

H=[1 -1;-1 2];

f=[-2;-6];

A=[1 1;-1 2;2 1];b=[2;2;3];

lb=zeros(2,1);

[x,fval,exitflag]=quadprog(H,f,A,b,[],[],lb)

在5个地点中选3处建生产同一产品的工厂,在这5个地点建厂所需投资,点用农田,建成以后的生产能力等数据如表所示

地点

1

2

3

4

5

所需投资(万元)

320

280

240

210

180

占用田亩(亩)

20

18

15

11

8

生产能力(万吨)

70

55

42

28

11

现在又总投资800万元,占用农田指标60亩,应如何选择厂址,使建成后总生产力最大。

程序代码:

f=[-70;-55;-42;-28;-11];

A=[320 280 240 210 180;20 18 15 11 8];b=[800;60];

Aeq=[1 1 1 1 1];beq=[3];

[x,fval,exitflag]=bintprog(f,A,b,Aeq,beq)

即选择在地点1、3、4建厂,总投资770万元,占用农田46亩,总生产能力可以达到140万吨。

定位问题

设某城市有某种物品的10个需求点,第i个需求点Pi的坐标为(ai,bi),道路网与坐标轴平行,彼此相交。现打算建一个该物品的供应中心,且由于受到城市某些条件的限制,该供应中心只能设在x界于[5,8],y界于[5,8]的范围内。问该中心应建在何处为好?

Pi的坐标为:

Ai:1 4 3 5 9 12 6 20 17 8

Bi:2 10 8 18 1 4 5 10 8 9

创建目标函数程序代码(文件名为example7_6a.m):

创建目标函数。

function f=example7_6a(x)

a=[1 4 3 5 9 12 6 20 17 8]';

b=[2 10 8 18 1 4 5 10 8 9]';

f=abs(x(1)-a)+abs(x(2)-b);

end

调用fminimax函数进行计算程序代码:

clear;clc;

x0=[7;7];

lb=[5;5];ub=[8;8];

[x,fval,maxfval]=fminimax(@example7_6a,x0,[],[],[],[],lb,ub)

x =

8

8

fval =

13

6

5

13

8

8

5

14

9

1

maxfval =

14.0000

所以该中心应建在(8,8)处为好,这时最小的最大距离为14。

某化工厂拟生产两种新产品A和B,其生产设备费用分别为:A,2万元/吨;B,5万元/吨。这两种产品均将造成环境污染,设由于公害所造成的损失可折算为:A,4万元/吨;B,1万元/吨。由于条件限制,工厂生产产品A和B的最大生产能力各为每月5吨

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值