城市供水量预测

答卷编号:

论文题目:城市供水量预测

指导教师:teacher

参赛学校:南昌大学

报名序号:1657

证书邮寄地址(学校组织请填写组队负责人):

邮政编码330031 南昌大学前湖180405室

卢雄 (收)

答卷编号:

城市供水量预测

摘要

随着科学技术的发展,人们生活水平的提高,水资源需求量越来越大,导致如今各大城市水资源严重匮乏,为了节约水资源,某城市对7年内的总供水量以及两个供水厂各自的供水量做了调查,本文利用这7年内供水量数据,建立了价格与供水量之间的函数图像,为了使模型简单化我们只分离出每一年同一个月的供水量,用matlab软件对函数图像进行多项式拟合,并用拟合程度最好与变化率方差最大找出函数关系式。发现理论图像与实际图像拟合得很好,能够很好的说明供水量受价格影响的变化趋势,并能准确预测出未来一年该月受价格影响的情况,总供水量以及两厂各自供水量的具体变化值。根据用上述方法求出的函数,能做到对水价进行合理的调整来控制未来的供水量。

一 问题提出

根据题目给出的数据附表,建立适当的数学模型来预测2007年1月份城市的计划供水量,同理可以推出2007年1月份城市中每个水厂的计划供水量,并由该城市8月份的供水量曲线得出在限定的供水量下所对应的水价,从而确定合理的水价调整方案。

二 问题相关的概念及原理

在(美) Frank R. Giordano, Maurice D. Weir, William P. Fox著的数学建模一书中的概念

1 误差平方和SSE:SSE=(yi-f(xi))2

i=1nn

2 修正平方和SST:SST=(yi-y)2

i=1

3 拟合程度:R=1-

SSE

SST

其中:yi为某一个水价对应得实际供水量, f(xi)为某水价对应的理论供水量,

y为实际供水量的平均值。

由于题目需要我们自己给出一下定义: 4 变化率方差:S=(f(xi)-f(x))2

i=1n

其中f(xi)为某水价对应导函数的理论供水量,f(xi)为某水价对应导函数的理论供水量的平均值。

变化率方差S是是用来说明模拟出来的函数在定义域变化的缓度,波动太大,

和实际的情况也不符,因此我们给出这个定义以便找出最符合实际的函数。后面的结果也验证我们定义的正确性。

5 拟合程度和变化率方差之比:T=R/S。

由于在实际操作中,由于符合上述R,和S的函数有多个,而对于拟合程度R越大越好(0

三 模型假设

根据实际情况,我们做出了如下假设:

忽略2000年到2007年在同一个月的温度变化;

某月水厂的供水量就是居民在该月所用的水的总量。

四 关键词

多项式拟合 水价 误差平方和 修正平方和 拟合程度 变化率方差 拟合程度/变化率方差之比

五 问题分析

模型一:

首先,预测2007年一月份城市的计划供水量。利用分离法,分离出从2000年到2006年一月份的供水量,利用多项式拟合找出函数关系式,由函数关系式计算出2007年一月份的计划供水量。

其次,预测2007年1月份城市中每个水厂的计划供水量。利用分离法,分离出从2000年到2006年一月份各厂的供水量,利用上述方法预测出一月份各厂的计划供水量。

模型二:

怎样合理调整水价使2007年8月份的供水量不超过5045万吨。利用分离法,分离出从2000年到2006年八月份的供水量,利用多项式拟合找出函数关系式,再把所要求限制条件代入函数关系式,求出合理的价格。

模型求解

现在来进行模型求解,首先说明一下用到的matlab 中的函数

使用polyfit()函数用来求解多项式拟合问题,使用polyval()函数用来计算在点x上的对应的函数值。

相关参数:

Y:每年一月的城市供水量几何平均数 T:拟合程度与变化率方差之比 X:水价

(另外一些符号已经在“问题相关的概念及原理”中给出,就不在这里重复。) 下面是求解过程:

用matlab求得每年一月的几何平均数

Y= 1.3001 1.3498 1.3854 1.4110 1.4302 1.4527 1.4572 代入拟合曲线程序。(Y的单位是107吨) 得:T1=479.4976 T2=454.5882

T1>T2所以曲线一的拟合度更好,即:曲线一是最佳拟合曲线。于是: Y=-0.0133X2+0.1598X+0.9919

根据上述函数关系式,代入2007年1月份的所对应的价格X=5.2得出

Y=4.53593×10,所以我们预测2007年1月份的计划供水量为4.53593×10吨。

下面是在T=479.4976,R=0.99646,S=0.0020747情况下的最佳图

7

7

同理可得,1月份一号水厂最佳供水曲线为:

2

Y=-0.0821X+0.9799X+6.1300

根据上述函数关系式我们不难预测出2007年1月份一号水厂的计划供水量为2.791696×10吨。

下面是一号水厂最佳拟合曲线图:

7

同上可求出2000年71月份二号水厂最佳供水曲线为: Y=-0.0507X2+0.6150X+3.7458

从而预测出2007年1月份二号水厂的计划供水量为1.727520×107吨。

下面是其对应的最佳拟合曲线图:

先用上面给出的方法求出2007年8月份城市的最佳拟合程度供水量曲线为 Y=0.0148X2-0.0395X+1.4016

下面是其对应的图:

把Y=50.45/31=1.6273代入供水量曲线, 由matlab求得水价X=5.4614元。

考虑到实际生活中的情况,我们可以把价格调整为5.5元。

六 结论分析、评价及推广

结论分析:

题目给出的数据太多太杂,为了把问题简单化,我们先是忽略温度因素,之后用分离法,分离出每年的同一个月份,把时间函数变成一个只与价格有关的函数。这样问题就简单的变成了一个一元函数问题,对于一元函数的处理,我们采用了《数值计算方法》一书中的线性最小二乘拟合法来拟合找出最佳曲线,来预测将来的用水量。先由多项式模拟曲线入手,分析了供水量关于价格的函数,找出最佳拟合曲线,然后由求得的最佳拟合曲线出发,可求得某个价格所对应供水量以及限制一定量供水量所对应的价格。 评价:

我们采用的这种分离法是值得鼓励的,它把一个复杂问题简单化了好多,做起来,也轻松多了,在运算过程中,我们采用数型结合求解,使整个论文看上去,直观,易懂,这也是值得推崇的。但是在处理问题,把问题想得太过简单,忽略了太多的因素,如温度等。而处理所用的点都过少,使计算精确度也下降了不少。 推广:

对于给定的一组数据{(Xi,Yi)}im假设拟合函1(X1,X2,„,Xm∈[a,b]互不相同),数的形式为:

(x)a00(x)a11(x)ann(x)

其中{k(x)}nk0(n

E2(a0,a1,,an)[(xi)yi][ajj(xi)yi]2

i1

i1

j0

m

2

mn

为极小的问题成为线性最小二乘问题。

七 心得体会

看到题目后,经过讨论,我们决定选接近我们生活的题目——供水量预测作为我们建模的内容,确定题目后,我们三人开始讨论,去图书馆找相关资料,通过一天的努力,终于建立了初步模型,虽然开始感到很盲目,没有一个明确的目标,甚至无从下手,可是通过互相鼓励,我们找回了属于我们的自信,这让我体会到团队精神在数学建模中的重要性,同时,除了相互鼓励,在很多时候,一个人的思考是不全面的,只有大家一起讨论才有可能把问题搞清楚,因此无论做任何板块,三个人都要一起齐心才行。第二天,为了防止盲目的思想重新出现,我们重新安排了时间,让我们有一种事半功倍的感觉。的确,做任何事情,合理的时间安排非常重要,建模也是一样,事先要做好一个规划,确定好哪一段时间要完成哪些内容,这样做才能游刃有余,终于在第二天,我们建立了完整的模型,进行了必要的数据处理,为第三天的论文做好了铺垫,在第三天,我们终于做好了所有的工作,在我们每个人看来这都是 比较难熬的三天,但没有人想过放弃,其实,数学建模锻炼和考察的是我们每个人的综合素质,从这次数学建模中我们不只学到的是数学知识,更重要的是建模思想,甚至是心理素质。

附:模型中计算拟合曲线以及预测点的函数值,以模型一中一月份城市的供水量的程序为例,其它模型中的只需在此基础上修改些数据即可 Matlab源程序:

1.求一月份城市供水量几何平均值 function [ y ] = GeometricMean(x)

x0=[1221790 1282410 1241980 1265880 1301360 1298670 1273770 1300620 1301750 1318300 1327550 1356910 1329360 1312580 1330460 1316710 1293410 1303150 1304690 1301800 1286760 1303180 1302230 1285860 1297670 1302460 1304330 1297080 1315840 1307490 1325940];

x1=[1224777.6 1270069.2 1280584.8 1310641.2 1282716.9 1319987.3 1342115.6 1353800.7 1359700.2 1378040.4 1372140.9 1353780 1367618 1360290.2 1378402.7 1377284.9 1401762.6 1376901.9 1370505.6 1387169.1 1362391.2 1366862.4 1387624.5 1361056.1 1351130.4 1347156 1376694.9 1369760.4 1356605.6 1357992.5 1354690.8 ];

x2=[1302579.2 1324042.2 1337937.9 1381181.4 1379235.8 1429176.3 1384325.1

1384888.3 1379553.3 1358940.2 1346775 1366282.2 1377157.1 1370828.8 1396572.2 1396152.3 1384069.1 1401753.6 1433538.6 1446799.4 1439303.7 1442232.3 1449257 1440921.6 1437132.8 1453230.1 1435105.3 1313812.5 1297152 1338306.6 1341624.3];

x3=[1331466.85 1392996.15 1351959.7 1376218.2 1412230.4 1409500.05

1384226.55 1411479.3 1412626.25 1429424.5 1438813.25 1468613.65 1440650.4 1423618.7 1441766.9 1427810.65 1404161.15 1414047.25 1415610.35 1412677 1397411.4 1414077.7 1413113.45 1396497.9 1408485.05 1413346.9 1415244.95 1407886.2 1426927.6 1418452.35 1437179.1];

x4=[1306987.2 1351622.4 1361985.6 1391606.4 1364086.8 1400817 1422624.6 1434140.4 1439954.4 1458028.8 1452214.8 1434120 1447757.4 1440535.8 1458385.8 1457284.2 1481407.2 1456906.8 1450603.2 1467025.2 1442606.4 1447012.8 1467474 1441290.6 1431508.8 1427592 1456702.8 1449868.8 1436904.6 1438271.4 1435017.6];

x5=[1391050.08 1404728.64 1447296.48 1445381.28 1494541.44 1450391.04 1450945.44 1445693.76 1425402.72 1413427.68 1432630.08 1443335.04 1437105.6 1462446.72 1462033.44 1450139.04 1467547.2 1498835.52 1511889.12 1504510.56 1507393.44 1514308.32 1506103.2 1502373.6 1518219.36 1500377.76 1380980.16 1364580 1405091.52 1408357.44 1407157.92];

x6=[1436961.729 1397505.082 1420829.689 1455455.508 1452830.27

1428529.737 1454733.324 1455836.119 1471987.678 1481014.984 1509668.142 1482781.408 1466405.387 1483854.926 1470435.957 1447696.904 1457202.414 1458705.338 1455884.915 1441207.003 1457231.692 1456304.563 1440328.671 1451854.345 1456529.026 1458354.005 1451278.549 1469586.902 1461437.928 1479443.745 1465117.166];

y=[1 1 1 1 1 1 1]

for k=1:length(x0) y(1)=y(1)*x0(k) end

for k=1:length(x1) y(2)=y(2)*x1(k) end

for k=1:length(x2) y(3)=y(3)*x2(k) end

for k=1:length(x3) y(4)=y(4)*x3(k) end

for k=1:length(x4) y(5)=y(5)*x4(k) end

for k=1:length(x5) y(6)=y(6)*x5(k) end

for k=1:length(x6) y(7)=y(7)*x6(k) end

y(1)=exp(1.0/length(x0)*log(y(1))) y(2)=exp(1.0/length(x1)*log(y(2))) y(3)=exp(1.0/length(x2)*log(y(3))) y(4)=exp(1.0/length(x3)*log(y(4))) y(5)=exp(1.0/length(x4)*log(y(5))) y(6)=exp(1.0/length(x5)*log(y(6))) y(7)=exp(1.0/length(x6)*log(y(7)))

2.求拟合曲线,并求出预测点的函数值 function [ y,x] =DateMultiRegress x=[3.0 3.4 3.9 4.3 4.7 5.0]

y=[1.3803 1.4353 1.4755 1.5064 1.5392 1.5516];

a=2:0.5:6

% 下面拟合二次和三次多项式 for n=2:3

f(:,n)=polyval(polyfit(x,y,n),a)'; z=polyfit(x,y,n); disp('z='); disp(z);

plot(a,f(:,n),x,y,'o')

% 下面求误差平方和sse,修正平方和sst sse=0 sst=0

g(:,n)=polyval(z,x) ym=mean(y)

for j=1:length(y)

psse=y(j)-g(j,n);

sse=sse+psse^2

psst=y(j)-ym;

sst=sst+psst^2

end

r=1-sse/sst %求拟合度r

%下面求变化率方差subsst

subsst=0

h(:,n)=polyval(polyder(z),x)

eh=h(:,n)

for j=1:length(x)

subpsst=h(j,n)-mean(eh);

subsst=subsst+subpsst^2

end

title(['Poly. regression, deg=',int2str(n),' R=',num2str(r),' S=',num2str(subsst),' R/S=',num2str(r/subsst)])

xlabel('Price'), ylabel('Total'), grid

z %显示所求函数的各项系数

o=polyval(z,5.2) %求出预测点的函数值

pause

end

3. 求拟合曲线,并根据拟合曲线求出在限定的供水量下所对应的水价 function [ y,x] =DateMultiRegress

x=[3.0 3.4 3.9 4.3 4.7 5.0]

y=[1.3803 1.4353 1.4755 1.5064 1.5392 1.5516];

a=2:0.5:6

% 下面拟合二次和三次多项式

for n=2:3

f(:,n)=polyval(polyfit(x,y,n),a)';

z=polyfit(x,y,n);

disp('z=');

disp(z);

plot(a,f(:,n),x,y,'o')

% 下面求误差平方和sse,修正平方和sst

sse=0

sst=0

g(:,n)=polyval(z,x)

ym=mean(y)

for j=1:length(y)

psse=y(j)-g(j,n);

sse=sse+psse^2

psst=y(j)-ym;

sst=sst+psst^2

end

r=1-sse/sst %求拟合度r

%下面求变化率方差subsst

subsst=0

h(:,n)=polyval(polyder(z),x)

eh=h(:,n)

for j=1:length(x)

subpsst=h(j,n)-mean(eh);

subsst=subsst+subpsst^2

end

title(['Poly. regression, deg=',int2str(n),' R=',num2str(r),' S=',num2str(subsst),' R/S=',num2str(r/subsst)])

xlabel('Price'), ylabel('Total'), grid

z %显示所求函数的各项系数

roots() %求出预测点的函数值

pause

end

参考文献

[1] 《数学建模》(美) Frank R. Giordano, Maurice D. Weir, William P. Fox著;

[2] 《数值计算方法》(下册) 林成森 编著

答卷编号:

论文题目:城市供水量预测

指导教师:teacher

参赛学校:南昌大学

报名序号:1657

证书邮寄地址(学校组织请填写组队负责人):

邮政编码330031 南昌大学前湖180405室

卢雄 (收)

答卷编号:

城市供水量预测

摘要

随着科学技术的发展,人们生活水平的提高,水资源需求量越来越大,导致如今各大城市水资源严重匮乏,为了节约水资源,某城市对7年内的总供水量以及两个供水厂各自的供水量做了调查,本文利用这7年内供水量数据,建立了价格与供水量之间的函数图像,为了使模型简单化我们只分离出每一年同一个月的供水量,用matlab软件对函数图像进行多项式拟合,并用拟合程度最好与变化率方差最大找出函数关系式。发现理论图像与实际图像拟合得很好,能够很好的说明供水量受价格影响的变化趋势,并能准确预测出未来一年该月受价格影响的情况,总供水量以及两厂各自供水量的具体变化值。根据用上述方法求出的函数,能做到对水价进行合理的调整来控制未来的供水量。

一 问题提出

根据题目给出的数据附表,建立适当的数学模型来预测2007年1月份城市的计划供水量,同理可以推出2007年1月份城市中每个水厂的计划供水量,并由该城市8月份的供水量曲线得出在限定的供水量下所对应的水价,从而确定合理的水价调整方案。

二 问题相关的概念及原理

在(美) Frank R. Giordano, Maurice D. Weir, William P. Fox著的数学建模一书中的概念

1 误差平方和SSE:SSE=(yi-f(xi))2

i=1nn

2 修正平方和SST:SST=(yi-y)2

i=1

3 拟合程度:R=1-

SSE

SST

其中:yi为某一个水价对应得实际供水量, f(xi)为某水价对应的理论供水量,

y为实际供水量的平均值。

由于题目需要我们自己给出一下定义: 4 变化率方差:S=(f(xi)-f(x))2

i=1n

其中f(xi)为某水价对应导函数的理论供水量,f(xi)为某水价对应导函数的理论供水量的平均值。

变化率方差S是是用来说明模拟出来的函数在定义域变化的缓度,波动太大,

和实际的情况也不符,因此我们给出这个定义以便找出最符合实际的函数。后面的结果也验证我们定义的正确性。

5 拟合程度和变化率方差之比:T=R/S。

由于在实际操作中,由于符合上述R,和S的函数有多个,而对于拟合程度R越大越好(0

三 模型假设

根据实际情况,我们做出了如下假设:

忽略2000年到2007年在同一个月的温度变化;

某月水厂的供水量就是居民在该月所用的水的总量。

四 关键词

多项式拟合 水价 误差平方和 修正平方和 拟合程度 变化率方差 拟合程度/变化率方差之比

五 问题分析

模型一:

首先,预测2007年一月份城市的计划供水量。利用分离法,分离出从2000年到2006年一月份的供水量,利用多项式拟合找出函数关系式,由函数关系式计算出2007年一月份的计划供水量。

其次,预测2007年1月份城市中每个水厂的计划供水量。利用分离法,分离出从2000年到2006年一月份各厂的供水量,利用上述方法预测出一月份各厂的计划供水量。

模型二:

怎样合理调整水价使2007年8月份的供水量不超过5045万吨。利用分离法,分离出从2000年到2006年八月份的供水量,利用多项式拟合找出函数关系式,再把所要求限制条件代入函数关系式,求出合理的价格。

模型求解

现在来进行模型求解,首先说明一下用到的matlab 中的函数

使用polyfit()函数用来求解多项式拟合问题,使用polyval()函数用来计算在点x上的对应的函数值。

相关参数:

Y:每年一月的城市供水量几何平均数 T:拟合程度与变化率方差之比 X:水价

(另外一些符号已经在“问题相关的概念及原理”中给出,就不在这里重复。) 下面是求解过程:

用matlab求得每年一月的几何平均数

Y= 1.3001 1.3498 1.3854 1.4110 1.4302 1.4527 1.4572 代入拟合曲线程序。(Y的单位是107吨) 得:T1=479.4976 T2=454.5882

T1>T2所以曲线一的拟合度更好,即:曲线一是最佳拟合曲线。于是: Y=-0.0133X2+0.1598X+0.9919

根据上述函数关系式,代入2007年1月份的所对应的价格X=5.2得出

Y=4.53593×10,所以我们预测2007年1月份的计划供水量为4.53593×10吨。

下面是在T=479.4976,R=0.99646,S=0.0020747情况下的最佳图

7

7

同理可得,1月份一号水厂最佳供水曲线为:

2

Y=-0.0821X+0.9799X+6.1300

根据上述函数关系式我们不难预测出2007年1月份一号水厂的计划供水量为2.791696×10吨。

下面是一号水厂最佳拟合曲线图:

7

同上可求出2000年71月份二号水厂最佳供水曲线为: Y=-0.0507X2+0.6150X+3.7458

从而预测出2007年1月份二号水厂的计划供水量为1.727520×107吨。

下面是其对应的最佳拟合曲线图:

先用上面给出的方法求出2007年8月份城市的最佳拟合程度供水量曲线为 Y=0.0148X2-0.0395X+1.4016

下面是其对应的图:

把Y=50.45/31=1.6273代入供水量曲线, 由matlab求得水价X=5.4614元。

考虑到实际生活中的情况,我们可以把价格调整为5.5元。

六 结论分析、评价及推广

结论分析:

题目给出的数据太多太杂,为了把问题简单化,我们先是忽略温度因素,之后用分离法,分离出每年的同一个月份,把时间函数变成一个只与价格有关的函数。这样问题就简单的变成了一个一元函数问题,对于一元函数的处理,我们采用了《数值计算方法》一书中的线性最小二乘拟合法来拟合找出最佳曲线,来预测将来的用水量。先由多项式模拟曲线入手,分析了供水量关于价格的函数,找出最佳拟合曲线,然后由求得的最佳拟合曲线出发,可求得某个价格所对应供水量以及限制一定量供水量所对应的价格。 评价:

我们采用的这种分离法是值得鼓励的,它把一个复杂问题简单化了好多,做起来,也轻松多了,在运算过程中,我们采用数型结合求解,使整个论文看上去,直观,易懂,这也是值得推崇的。但是在处理问题,把问题想得太过简单,忽略了太多的因素,如温度等。而处理所用的点都过少,使计算精确度也下降了不少。 推广:

对于给定的一组数据{(Xi,Yi)}im假设拟合函1(X1,X2,„,Xm∈[a,b]互不相同),数的形式为:

(x)a00(x)a11(x)ann(x)

其中{k(x)}nk0(n

E2(a0,a1,,an)[(xi)yi][ajj(xi)yi]2

i1

i1

j0

m

2

mn

为极小的问题成为线性最小二乘问题。

七 心得体会

看到题目后,经过讨论,我们决定选接近我们生活的题目——供水量预测作为我们建模的内容,确定题目后,我们三人开始讨论,去图书馆找相关资料,通过一天的努力,终于建立了初步模型,虽然开始感到很盲目,没有一个明确的目标,甚至无从下手,可是通过互相鼓励,我们找回了属于我们的自信,这让我体会到团队精神在数学建模中的重要性,同时,除了相互鼓励,在很多时候,一个人的思考是不全面的,只有大家一起讨论才有可能把问题搞清楚,因此无论做任何板块,三个人都要一起齐心才行。第二天,为了防止盲目的思想重新出现,我们重新安排了时间,让我们有一种事半功倍的感觉。的确,做任何事情,合理的时间安排非常重要,建模也是一样,事先要做好一个规划,确定好哪一段时间要完成哪些内容,这样做才能游刃有余,终于在第二天,我们建立了完整的模型,进行了必要的数据处理,为第三天的论文做好了铺垫,在第三天,我们终于做好了所有的工作,在我们每个人看来这都是 比较难熬的三天,但没有人想过放弃,其实,数学建模锻炼和考察的是我们每个人的综合素质,从这次数学建模中我们不只学到的是数学知识,更重要的是建模思想,甚至是心理素质。

附:模型中计算拟合曲线以及预测点的函数值,以模型一中一月份城市的供水量的程序为例,其它模型中的只需在此基础上修改些数据即可 Matlab源程序:

1.求一月份城市供水量几何平均值 function [ y ] = GeometricMean(x)

x0=[1221790 1282410 1241980 1265880 1301360 1298670 1273770 1300620 1301750 1318300 1327550 1356910 1329360 1312580 1330460 1316710 1293410 1303150 1304690 1301800 1286760 1303180 1302230 1285860 1297670 1302460 1304330 1297080 1315840 1307490 1325940];

x1=[1224777.6 1270069.2 1280584.8 1310641.2 1282716.9 1319987.3 1342115.6 1353800.7 1359700.2 1378040.4 1372140.9 1353780 1367618 1360290.2 1378402.7 1377284.9 1401762.6 1376901.9 1370505.6 1387169.1 1362391.2 1366862.4 1387624.5 1361056.1 1351130.4 1347156 1376694.9 1369760.4 1356605.6 1357992.5 1354690.8 ];

x2=[1302579.2 1324042.2 1337937.9 1381181.4 1379235.8 1429176.3 1384325.1

1384888.3 1379553.3 1358940.2 1346775 1366282.2 1377157.1 1370828.8 1396572.2 1396152.3 1384069.1 1401753.6 1433538.6 1446799.4 1439303.7 1442232.3 1449257 1440921.6 1437132.8 1453230.1 1435105.3 1313812.5 1297152 1338306.6 1341624.3];

x3=[1331466.85 1392996.15 1351959.7 1376218.2 1412230.4 1409500.05

1384226.55 1411479.3 1412626.25 1429424.5 1438813.25 1468613.65 1440650.4 1423618.7 1441766.9 1427810.65 1404161.15 1414047.25 1415610.35 1412677 1397411.4 1414077.7 1413113.45 1396497.9 1408485.05 1413346.9 1415244.95 1407886.2 1426927.6 1418452.35 1437179.1];

x4=[1306987.2 1351622.4 1361985.6 1391606.4 1364086.8 1400817 1422624.6 1434140.4 1439954.4 1458028.8 1452214.8 1434120 1447757.4 1440535.8 1458385.8 1457284.2 1481407.2 1456906.8 1450603.2 1467025.2 1442606.4 1447012.8 1467474 1441290.6 1431508.8 1427592 1456702.8 1449868.8 1436904.6 1438271.4 1435017.6];

x5=[1391050.08 1404728.64 1447296.48 1445381.28 1494541.44 1450391.04 1450945.44 1445693.76 1425402.72 1413427.68 1432630.08 1443335.04 1437105.6 1462446.72 1462033.44 1450139.04 1467547.2 1498835.52 1511889.12 1504510.56 1507393.44 1514308.32 1506103.2 1502373.6 1518219.36 1500377.76 1380980.16 1364580 1405091.52 1408357.44 1407157.92];

x6=[1436961.729 1397505.082 1420829.689 1455455.508 1452830.27

1428529.737 1454733.324 1455836.119 1471987.678 1481014.984 1509668.142 1482781.408 1466405.387 1483854.926 1470435.957 1447696.904 1457202.414 1458705.338 1455884.915 1441207.003 1457231.692 1456304.563 1440328.671 1451854.345 1456529.026 1458354.005 1451278.549 1469586.902 1461437.928 1479443.745 1465117.166];

y=[1 1 1 1 1 1 1]

for k=1:length(x0) y(1)=y(1)*x0(k) end

for k=1:length(x1) y(2)=y(2)*x1(k) end

for k=1:length(x2) y(3)=y(3)*x2(k) end

for k=1:length(x3) y(4)=y(4)*x3(k) end

for k=1:length(x4) y(5)=y(5)*x4(k) end

for k=1:length(x5) y(6)=y(6)*x5(k) end

for k=1:length(x6) y(7)=y(7)*x6(k) end

y(1)=exp(1.0/length(x0)*log(y(1))) y(2)=exp(1.0/length(x1)*log(y(2))) y(3)=exp(1.0/length(x2)*log(y(3))) y(4)=exp(1.0/length(x3)*log(y(4))) y(5)=exp(1.0/length(x4)*log(y(5))) y(6)=exp(1.0/length(x5)*log(y(6))) y(7)=exp(1.0/length(x6)*log(y(7)))

2.求拟合曲线,并求出预测点的函数值 function [ y,x] =DateMultiRegress x=[3.0 3.4 3.9 4.3 4.7 5.0]

y=[1.3803 1.4353 1.4755 1.5064 1.5392 1.5516];

a=2:0.5:6

% 下面拟合二次和三次多项式 for n=2:3

f(:,n)=polyval(polyfit(x,y,n),a)'; z=polyfit(x,y,n); disp('z='); disp(z);

plot(a,f(:,n),x,y,'o')

% 下面求误差平方和sse,修正平方和sst sse=0 sst=0

g(:,n)=polyval(z,x) ym=mean(y)

for j=1:length(y)

psse=y(j)-g(j,n);

sse=sse+psse^2

psst=y(j)-ym;

sst=sst+psst^2

end

r=1-sse/sst %求拟合度r

%下面求变化率方差subsst

subsst=0

h(:,n)=polyval(polyder(z),x)

eh=h(:,n)

for j=1:length(x)

subpsst=h(j,n)-mean(eh);

subsst=subsst+subpsst^2

end

title(['Poly. regression, deg=',int2str(n),' R=',num2str(r),' S=',num2str(subsst),' R/S=',num2str(r/subsst)])

xlabel('Price'), ylabel('Total'), grid

z %显示所求函数的各项系数

o=polyval(z,5.2) %求出预测点的函数值

pause

end

3. 求拟合曲线,并根据拟合曲线求出在限定的供水量下所对应的水价 function [ y,x] =DateMultiRegress

x=[3.0 3.4 3.9 4.3 4.7 5.0]

y=[1.3803 1.4353 1.4755 1.5064 1.5392 1.5516];

a=2:0.5:6

% 下面拟合二次和三次多项式

for n=2:3

f(:,n)=polyval(polyfit(x,y,n),a)';

z=polyfit(x,y,n);

disp('z=');

disp(z);

plot(a,f(:,n),x,y,'o')

% 下面求误差平方和sse,修正平方和sst

sse=0

sst=0

g(:,n)=polyval(z,x)

ym=mean(y)

for j=1:length(y)

psse=y(j)-g(j,n);

sse=sse+psse^2

psst=y(j)-ym;

sst=sst+psst^2

end

r=1-sse/sst %求拟合度r

%下面求变化率方差subsst

subsst=0

h(:,n)=polyval(polyder(z),x)

eh=h(:,n)

for j=1:length(x)

subpsst=h(j,n)-mean(eh);

subsst=subsst+subpsst^2

end

title(['Poly. regression, deg=',int2str(n),' R=',num2str(r),' S=',num2str(subsst),' R/S=',num2str(r/subsst)])

xlabel('Price'), ylabel('Total'), grid

z %显示所求函数的各项系数

roots() %求出预测点的函数值

pause

end

参考文献

[1] 《数学建模》(美) Frank R. Giordano, Maurice D. Weir, William P. Fox著;

[2] 《数值计算方法》(下册) 林成森 编著


相关内容

  • 城市总体规划中城市用水量预测的思考
  • 城市总体规划中城市用水量预测的思考 摘要:人口以及用水量的预测,是一个非平稳时间序列过程,它具有很强的时代特色,准确把握宏观政策对未来的发展影响,才能较为准确地进行预测. 关键词:城市用水量预测分类预测用水定额法水资源承载力 1.前言 城市总体规划阶段的给水工程规划,需要根据城市发展目标.用地 .人 ...

  • 城市用水量需求调查和科学预测
  • 城市用水量需求调查和科学预测(刘遂庆) 2002年1月http://www.hwcc.com.cn 30日 中国水网 编辑:chentao 摘 要:中国实施改革开放政策以来,城市供水设施建设已经取得了巨大成就,城市供水系统不断地得到发展和完善.但是,在各地供水规划工作中首先需要预测确定供水总量的问题 ...

  • 城市给水规模的确定
  • 城市给水排水工程规划水量规模的确定 城市给水排水工程规划水量规模的确定 吴兆申 皇甫佳群 金家明 提要: 确定城市给水排水工程规划水量规模十分重要,提出从总体规划.专业规划.详细规划到工程实施等各规划阶段预测水量规模的依据及需注意的问题. 关键词: 给水 排水 规划水量规模 预测 依据 城市给水排水 ...

  • 某污水处理厂污水量预测的比较研究
  • 某污水处理厂污水量预测的比较研究 [摘要]污水量预测是一项重要的工作,它关系到污水系统的布局.污水处理厂的建设规模以及污水处理厂控制用地等.本文采用两种方法对大连市某区污水量进行预测对比,选择了合理的污水量数据,作为确定污水处理厂工程建设规模的依据. [关键词]污水:预测方法:建设规模 预测方法的选 ...

  • 规模预测方法
  • 可用方法: 一.基于城市环境容量控制 (1)土地容量验证 按新增城镇人口人均占地100~105平方米计算,可承载 (2)城市水资源容量验证 现状供水量,规划供水量,95%保证率可供水量,供水规模 根据南通市远期综合用水指标 (3)城市生态环境容量验证 二.基于紧凑城市理念的规模下限和基于宜居城市理念 ...

  • 园区规划水资源论证中的需水预测
  • 第11卷第1期2012年3月南通大学学报(自然科学版) JournalofNantongUniversity(NaturalScienceEdition)Vol.11No.1Mar.2012 园区规划水资源论证中的需水预测 辛朋磊1,汤嘉辉2 (1.江苏省水文水资源勘测局南通分局,江苏南通 2260 ...

  • 东莞市城市供水面临的问题及对策研究
  • 人民珠江 PEARL砒VER・2007年第6期 东莞市城市供水面临的问题及对策研究 张强,罗 (珠江水利科学研究院 杰 广东广州510611) 摘要:分析了东莞市现状供水水源构成,总结供水系统中存在的主要问题包括过渡依赖东江水.供水能力不足. 供水保证率低等,提出要保护并利用蓄水工程.改造供水管网, ...

  • 关于城市给水工程规划要点的探讨
  • 摘要:水是城市发展的基础,城市给水系统规划的合理与否将直接影响和制约城市的发展.本文笔者针对城市给水规划中的一些问题进行了探讨. 关键词:给水工程:重复利用率:水资源 前 言 随着我国经济的蓬勃发展,城市结构和功能的不断完善,给排水工程规划已成为城市规划中不可或缺的组成部分,然而依据<城市规划 ...

  • 诸暨市城北水厂项目选址论证报告
  • 诸暨市城北水厂项目选址论证报告 一.建设项目条件分析 1.1立项依据 根据浙江省发展和改革委员会(浙发改投资[2011]1191号)<省发改委关于诸暨市城北水厂及城乡供水管网配套项目建议书的批复>. 1.3区域概况 (1)地理位置 诸暨市地处长江三角洲南翼,上海.杭州及诸暨的" ...