建模matlab的M文件Word文件下载.docx

上传人:b****6 文档编号:18983120 上传时间:2023-01-02 格式:DOCX 页数:22 大小:18.21KB
下载 相关 举报
建模matlab的M文件Word文件下载.docx_第1页
第1页 / 共22页
建模matlab的M文件Word文件下载.docx_第2页
第2页 / 共22页
建模matlab的M文件Word文件下载.docx_第3页
第3页 / 共22页
建模matlab的M文件Word文件下载.docx_第4页
第4页 / 共22页
建模matlab的M文件Word文件下载.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

建模matlab的M文件Word文件下载.docx

《建模matlab的M文件Word文件下载.docx》由会员分享,可在线阅读,更多相关《建模matlab的M文件Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。

建模matlab的M文件Word文件下载.docx

COST(成本矩阵),VARI(容差等级向量)

%相关M文件:

jm97a,jm97afun

clear;

globalCOSTVARI;

big=10000;

COST=[big,25,big;

2050,big;

20,50,200;

50,100,500;

50,big,big;

10,25,100;

big,25,100];

vlb=[0.075,0.225,0.075,0.075,1.125,12,0.5625];

vub=[0.125,0.375,0.125,0.125,1.875,20,0.935];

option=[];

x0=[0.1,0.3,0.1,0.1,1.5,16,0.75];

VARI=[5,10,10,10,10,10,5];

disp(['

原费用:

'

num2str(jm97aoptim(x0))]);

minfee=inf;

forj2=[105]

forj3=[1051]

forj4=[1051]

forj6=[1051]

forj7=[51]

VARI=[5,j2,j3,j4,10,j6,j7];

[x0,options]=constr('

jm97aoptim'

x0,option,vlb,vub);

ifminfee>

options(8)

minfee=options(8);

grad=VARI;

mark=x0;

end;

end;

标定值:

num2str(mark)]);

容差等级:

num2str(grad)]);

费用:

num2str(minfee)]);

%96年中国大学生数学建模竞赛A题:

捕鱼

《数学的实践与认识》1997,1,50-57

%x1,x2,x3,x4--各龄鱼的数量

%k--4龄鱼捕捞系数

%y3,y4--各龄鱼的捕捞数量

%y--鱼的捕获重量

%n--产卵数量

%L.J.HU

%微分方程求解

x1=dsolve('

Dx1=-0.8*x1'

'

x1(0)=a'

t'

);

x11=subs(x1,'

1);

x2=dsolve('

Dx2=-0.8*x2'

x2(0)=b'

x21=subs(x2,'

x21=subs(x21,'

b'

x11);

x3a=dsolve('

Dx3a=-0.8*x3a-0.42*k*x3a'

x3a(0)=c'

x3a=subs(x3a,'

c'

x21);

x3a2=subs(x3a,'

2/3);

x3b=dsolve('

Dx3b=-0.8*x3b'

x3b(2/3)=x3b0'

x3b=subs(x3b,'

x3b0'

x3a2);

x3b=simple(x3b);

x31=subs(x3b,'

x4a=dsolve('

Dx4a=-0.8*x4a-k*x4a'

x4a(0)=d'

x4a2=subs(x4a,'

x4b=dsolve('

Dx4b=-0.8*x4b'

x4b(2/3)=x4b0'

x4b=subs(x4b,'

x4b0'

x4a2);

x4b=simple(x4b);

x41=subs(x4b,'

%捕获量产卵量

symsk;

dy3=0.42*k*x3a;

dy4=k*x4a;

y3=int(dy3,'

0,2/3);

y4=int(dy4,'

y=17.86*y3+22.99*y4;

n=1.109e5*3*int(0.5*x3b+x4b,'

2/3,1);

x10=122*n/(122+n);

%优化

y=subs(y,{'

a'

d'

k},{'

x

(1)'

x

(2)'

x(3)'

});

x10=subs(x10,{'

x31=subs(x31,{'

x41=subs(x41,{'

funf=['

f='

char(-y),'

;

];

fung=['

g=[x

(1)-'

char(x10),'

x

(2)-'

char(x31+x41),'

funn=[funffung];

options(13)=2;

[x,options]=constr(funn,[122,3.29,1],options);

y=-options(8);

x11=vpa(subs(x11,'

x

(1)),4);

x21=vpa(subs(x21,'

%输出

可持续捕获3,4龄鱼捕捞系数:

num2str([x(3)*0.42,x(3)])]);

每年捕获重量(10^9):

num2str(y)]);

年初各龄鱼分布(10^9):

num2str(x

(1)),'

'

char(x11),...

char(x21),'

num2str(x

(2))]);

%96年中国大学生数学建模竞赛B题:

洗衣机

%主程序

《数学的实践与认识》1997,1,67-70

%相关M文件:

jm96bfun

vmin0=inf;

fort=2:

5

vini=30*ones(1,t);

vlb=20*ones(1,t);

%最小水量

vub=40*ones(1,t);

%最大水量

opt([2:

3,14])=[1e-8,1e-8,500];

[vmin,options]=constr('

washfun'

vini,opt,vlb,vub);

vmin%每轮水量

ifsum(vmin)<

sum(vmin0)

vmin0=vmin;

t0=t;

end

end

最优洗衣轮次:

int2str(t0)]);

洗衣每轮水量:

num2str(vmin0)]);

function[f,g]=JM97Aoptim(x)

%97年中国大学生数学建模竞赛A题目标函数

%用法:

[f,g]=jm97aoptim(x)

%x--7个零件参数

%f--目标函数

%g--虚拟参数,优化工具箱实用

COST(成本矩阵),VARI(容差等级)

y=jm97afun(x);

sig=0;

h=0.0001;

fori=1:

7

xh=x;

xh(i)=x(i)+h;

dy=(jm97afun(xh)-jm97afun(x))/h;

sig=sig+dy^2*(VARI(i)/300*x(i))^2;

sig=sig^0.5;

f=9000-8000*(normcdf(1.8,y,sig)-normcdf(1.2,y,sig))...

-1000*(normcdf(1.6,y,sig)-normcdf(1.4,y,sig));

gra=[1051];

f=f+sum((VARI(i)==gra).*COST(i,:

));

g=-1;

function[mincost,bestorder]=jm97b(r,e)

%97年中国大学生数学建模竞赛B题(枚举法)

%《数学的实践与认识》1998,1

%费用函数计算采用迭代算法

%用法:

[mincost,bestorder]=jm97bcount(r,e)

%mincost--最小费用

%bestorder--最优次序

%r--水平切割费用比

%e--垂直换刀费用

%结果说明:

1-左,2-右,3-前,4-后,5-上,6-下

jm97brule

%L.J.HU

mincost=inf;

minorder=[];

p=perms(1:

6);

length(p)

order=p(i,:

cost=jm97bcostf(order,r,e);

ifcost<

mincost

mincost=cost;

bestorder=order;

elseifcost==mincost

bestorder=[minorder;

order];

functiony=jm97bcostf(order,r,e)

x=[10,14.5,19];

%长宽高

l=[6,7,6];

%左前上深度

k=[1,5.5,9];

%右后下深度

y=0;

i=1;

iforder(i)==1

x

(1)=x

(1)-l

(1);

l

(1)=0;

y=y+x

(2)*x(3);

elseiforder(i)==2

x

(1)=x

(1)-k

(1);

k

(1)=0;

elseiforder(i)==3

x

(2)=x

(2)-l

(2);

l

(2)=0;

y=y+x

(1)*x(3);

elseiforder(i)==4

x

(2)=x

(2)-k

(2);

k

(2)=0;

elseiforder(i)==5

x(3)=x(3)-l(3);

l(3)=0;

y=y+x

(1)*x

(2)*r;

elseiforder(i)==6

x(3)=x(3)-k(3);

k(3)=0;

i=2;

if(order(i-1)==3)|(order(i-1)==4)

y=y+e;

if(order(i-1)==3)|(order(i-1)==4)

if(order(i-1)==1)|(order(i-1)==2)

i=3;

elseif((order(i-1)==5)|(order(i-1)==6))&

((order(i-2)==3)|(order(i-2)==4))

((order(i-2)==1)|(order(i-2)==2))

fori=4:

6

((order(i-2)==5)|(order(i-2)==6))&

((order(i-3)==3)|(order(i-3)==4))

((order(i-3)==1)|(order(i-3)==2))

l

(2)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 卡通动漫

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1