matlab实验案例节水洗衣机.docx

上传人:b****3 文档编号:26511570 上传时间:2023-06-20 格式:DOCX 页数:13 大小:80.76KB
下载 相关 举报
matlab实验案例节水洗衣机.docx_第1页
第1页 / 共13页
matlab实验案例节水洗衣机.docx_第2页
第2页 / 共13页
matlab实验案例节水洗衣机.docx_第3页
第3页 / 共13页
matlab实验案例节水洗衣机.docx_第4页
第4页 / 共13页
matlab实验案例节水洗衣机.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

matlab实验案例节水洗衣机.docx

《matlab实验案例节水洗衣机.docx》由会员分享,可在线阅读,更多相关《matlab实验案例节水洗衣机.docx(13页珍藏版)》请在冰豆网上搜索。

matlab实验案例节水洗衣机.docx

matlab实验案例节水洗衣机

 

1实验案例1

1.1案例:

节水洗衣机1

1.1.1问题重述与分析2

1.1.2基本假设及说明2

1.1.3符号和变量说明2

1.1.4建模准备3

1.1.5模型建立4

1.1.6模型求解4

1.1.7思考题10

1实验案例

1.1案例:

节水洗衣机

问题:

1996年全国赛B题节水洗衣机

我国淡水资源有限,节约用水人人有责,洗衣机在家庭用水中占有相当大的份额,目前洗衣机已非常普及,节约洗衣机用水十分重要。

假设在放入衣物和洗涤剂后洗衣机的运行过程为:

加水—漂洗—脱水—加水—漂洗—脱水—…—加水—漂洗—脱水(称“加水—漂洗—脱水”为运行一轮)。

请为洗衣机设计一种程序(包括运行多少轮、每轮加水量等),使得在满足一定洗涤效果的条件下,总用水量最少。

选用合理的数据进行运算,对照目前常用的洗衣机的运行情况,对你的模型和结果出评价。

洗衣机的节水优化模型

 

摘要本文通过分析洗衣机的洗衣过程,认为是一次性溶解、多次稀释的过程。

据此建立非线性规划模型,并利用迭代公式和最优化原理,得出最少用水量的判断公式和代数解。

以海棠洗衣机为例,通过对比,利用我们的模型算出的用水量比厂家提供的数据要少,从而说明所建模型的优越性。

最后,根据模型解,给出最少用水量与脏衣服的重量的关系图,并从中得出有趣的结论,也给厂家提供一个节约用水的模型。

1.1.1问题重述与分析

对洗衣机的运行进行设计,主要目的是为了节约用水量。

在满足洗涤效果的前提下使得用水量最少。

因此,这是一个典型的最优化问题,目标为洗衣总用水量最少,主要的决策为洗多少轮以及每轮加水量的问题。

而一般洗衣只是第一次加水漂洗时才放洗涤剂,而过后则是清水漂洗,通过化学原理,可以将第1轮洗涤后的各轮洗涤看成是不断的稀释过程。

为了评价洗涤效果,可用衣服上残留的污物质量与洗涤前污物质量之比作为评价指标。

在设计每轮加水量时,要考虑洗衣机本身洗衣同的最大容积,运行的最低加水量。

1.1.2基本假设及说明

1.洗衣机一次用水量有最高限和最低限,能连续补充在限度内的任意水量;

2.洗衣机每轮运行过程为:

加水-漂洗-脱水;

3.仅在第一轮运行时加上洗涤剂,在后面的运行轮中仅有稀释作用;

4.洗衣时所加的洗涤剂适量,漂洗时间足够,能使污垢一次溶解,忽略不能溶解的污垢;

5.脱水后的衣服质量与干衣服的重量成正比;

6.每缸洗衣水只用一次;

1.1.3符号和变量说明

污物的质量(kg);

第i轮运行时污物浓度(kg/升);

n:

洗衣服时洗衣机运行轮数(次);

第i轮用水量(升);

干衣服的质量(kg);

衣服脱水后衣服含水质量(kg);

衣服的清洁度(常量,洗衣的衣服上污量与

之比);

洗一次衣服的总用水量(升);

洗衣机一次洗衣的最大量(kg);

脱水后衣服含水质量与干衣服质量比(常数);显然

洗衣机一次注水最高限(升);

衣服完全浸泡的状态下为洗衣机能正常运行需注入的最低水量(升);

单位质量的衣服完全浸泡最低所需水量(常量);

1.1.4建模准备

(1)由化学中的洗涤原理知,有助于洗涤作用的三个因素:

1、表面活性(以肥皂为代表的活性剂产生洗涤作用的各种物质之通称);

2、界面电(配入洗涤剂中的碱和磷酸盐等无机助剂的作用);

3、机械力和流水力(由于水的流动产生机械力)

在洗衣过程中,一般之在第一次加入洗涤剂,在第二次及以后,不再加入洗涤剂,从而,使有助于洗涤的三个因素的前两个不存在,只剩下水的流动力的作用,洗涤作用因此很微弱。

于是假设污物的第一次被洗涤,接下来的过程只是污物的稀释过程是合理的。

(2)实际生活经验可知,在衣服完全浸泡的基础上,洗衣机还需有一定的富裕水量

才能使其正常运行。

一种衣服完全浸泡所需水量是衣服质量的

倍,则质量为

的衣服使洗衣机能洗的最少水量

脱水后剩下水量是衣服质量的

倍,

对于普通衣服

可视为常数。

实验测定1kg混合干衣服浸泡所需水量,脱水后衣服含水量与干衣服质量之比,如表1。

0.5

1.0

1.5

2.0

2.5

3.0

3.5

水量

2.56

5.02

7.48

9.87

12.3

15.7

18.6

0.3

0.61

0.92

1.20

1.52

1.88

2.15

计算可得

各次运行时,污物的浓度为:

经过迭代得到

1.1.5模型建立

根据以上分析,可以建立解决洗衣机节水的非线性最优化模型。

(1)

1.1.6模型求解

1.1.6.1解析求解

如果

(1)存在最优解

,则可以证明

(证明从略)。

n的取值讨论

(1)当

刚好为

,则有最多洗涤轮数。

,得

(2)当

刚好为

,则有最少洗涤轮数。

,得

综上所述,n的取值范围为

1.1.6.2其他求解方法

所建立模型为非线性最优化模型,故这里采用Matlab求解非线性规划的函数fmincon求解。

1.1.6.3数据初始化程序init1996b.m

%1996B洗衣机节水模型

%参数与数据初始化

%

af=0.60;%脱水后衣服含水质量与干衣服质量比(常数)

beta=5.0;%单位质量的衣服完全浸泡最低所需水量(常量);

Vmin=24;%衣服完全浸泡的状态下为洗衣机能正常运行需注入的最低水量(升);

ef=0.001;%衣服的清洁度(常量,洗衣的衣服上污量与之比);

M=5;%干衣服的质量(kg);

m=af*M;%衣服脱水后衣服含水质量(kg)

VminM=beta*M+Vmin;

Vmax=60;%洗衣机一次注水最高限(升);

1.1.6.4模型求解程序(根据n穷举求解)

程序:

solv1996_1.m

%init

init1996b

Nmin=fix(log(ef)/log((m/Vmax)))+1

Nmax=fix(log(ef)/log(m/VminM))+1

opti_s=1e6;

forn=Nmin:

Nmax,

t1=m/(ef)^(1/n)

t2=VminM

onex=max(m/(ef)^(1/n),VminM);

S=n*onex-(n-1)*m

x=[];

x

(1)=onex;

ifn>=2,

fori=2:

n,

x(i)=onex-m;

end

end

%test=sum(x)-S;

ifS

opti_n=n;%洗衣轮次

opti_s=S;%存储最少所需水量

opti_x=x;

end

end

opti_n

opti_s

opti_x

m

1.1.6.5模型求解程序(直接非线性规划求解)

目标函数m文件:

myobj1996b.m

functionr=myobj1996b(x)

%1996年B题目标函数:

总需水量

r=sum(x);

约束条件m文件:

mycon1996b.m

function[C,Ceq]=mycon1996b(x)

%1996年B题采用非线性规划求解算法求解的约束条件函数

globalmef%全局变量

n=length(x);%洗衣轮次

tmpX=x

(1);%x1

ifn>=2,

fori=2:

n,

tmpX=tmpX*(x(i)+m);%x1*(x2+m)*(x3+m)*...*(xn+m)

end

end

C=m^n-tmpX*ef;%只有一个约束,决策变量约束用fmincon的参数lb,ub来处理

%C=m^n/tmpX-ef;%只有一个约束,决策变量约束用fmincon的参数lb,ub来处理

Ceq=[];

主程序:

solv1996b_2

%1996B洗衣机节水模型

%参数与数据初始化

%init

init1996b

Nmin=fix(log(ef)/log((m/Vmax)))+1

Nmax=fix(log(ef)/log(m/VminM))+1

opti_s=1e6;

forn=Nmin:

Nmax,%穷举所有可能洗衣次数的模型

lb=[];

ub=[];

lb

(1)=VminM;

ub

(1)=Vmax;

ifn>=2,

forj=2:

n,

lb(j)=VminM-m;

ub(j)=Vmax-m;

end

end

lb

ub

[x,fval,exitflag]=fmincon('myobj1996b',VminM*ones(1,n),[],[],[],[],...

lb,ub,'mycon1996b')

iffval

opti_n=n;

opti_s=fval;

opti_x=x;

end

end

opti_n

opti_s

opti_x

m

1.1.6.6解析法运行结果:

solv1996b_1

Nmin=

3

Nmax=

3

t1=

30

t2=

49

S=

141

opti_n=

3

opti_s=

141

opti_x=

494646

m=

3

1.1.6.7直接非线性规划求解运行结果

solv1996b_2

Nmin=

3

Nmax=

3

lb=

494646

ub=

605757

Warning:

Trustregionmethoddoesnotcurrentlysolvethistypeofproblem,

switchingtolinesearch.

>InE:

\MATLABR11\toolbox\optim\fmincon.matline190

InF:

\PROGRAM\mbook\solv1996b_2.matline24

Optimizationterminatedsuccessfully:

Searchdirectionlessthan2*options.TolXand

maximumconstraintviolationislessthanoptions.TolCon

ActiveConstraints:

1

2

3

x=

494646

fval=

141

exitflag=

1

opti_n=

3

opti_s=

141

opti_x=

494646

m=

3

结果对比发现,两种求解方法得到的洗衣方案相同,均洗3轮,共需水141,第1,2,3轮分别加水49升,46升,46升。

1.1.7思考题

求解模型

(1)给出解析解,并与前面的非线性规划模型的解对比。

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

当前位置:首页 > 人文社科 > 法律资料

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

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