当前位置:文档之家› 公路运量预测模板

公路运量预测模板

基于预测公路运量的模型求解摘要科学准确地预测公路货运量是制定公路网规划的基础。

公路货运量的预测方法有很多,可以根据不同的情况选择不同的预测模型。

首先运用MATLAB的 BP神经网络组合预测模型,灵活利用神经网络通过自适应自学习能够拟合任意非线性函数的功能,有效克服传统的组合预测方法,在实际应用中把数据间的关系强加给某一类函数的不足,并借助于数学计算软件进行编程,大大降低模型的计算难度,预测出2010年和2011年的公路客运量和公路货运量。

实例证明该方法具有很高的预测精度。

本次基于预测公路运量的问题,根据往年20年的数据,主要从人口数量、机动车数量、公路面积这几个方面考虑,先借助于matlab软件,从神经网络组合预测模型入手,预测出2010年和2011年的公路客运量和公路货运量。

然后根据回归的知识,运用excel的强大功能预测出的2010年和2011年的公路客运量和公路货运量。

最后两者进行对比,列出各自的优缺点。

预测结果如下:用BP神经网络预测结果:2010年和2011年的公路客运量分别为 43370万人和43372万人;货运量分别为21770万吨和21771万吨。

用线性回归预测结果:2010年和2011年的公路客运量分别为 51011.91603万人和53092.16135万人;货运量分别为26050.09655万吨和28545.83948万吨万吨。

关键词:MATLAB;组合预测;BP神经网络;excel统计分析1、问题重述1.1基本情况公路运量主要包括公路的客运量和公路货运量两个方面。

据研究,某地区的公路运量主要与该地区的人数、机动车数量和公路面积有关,表1给出了20年得公路运量相关数据,表中人数和公路客运量的单位为万人,机动车数量单位为万两,公路面积的单位为万平方千米,公路货运量单位为万吨。

根据有关部门数据,该地区2010年和2011年的人数分别为73.39和75.55万人,机动车数量分别为3.9635和4.0975万辆,公路面积将分别为0.9880和1.0268万平方米。

1.2、相关信息(见附件)附件1:某地区20年公路运量数据1.3、需要解决的问题1.请利用BP神经网络预测该地区2010年2011年得公路客运量和公路货运量。

2.请利用其他方法预测该地区2010年2011年得公路客运量和公路货运量。

3.比较两种方法的优缺点。

2、符号约定Wi (i=1,2,3,4) 依次表示由人口数量,机动车数量,公路面积,年份预测出的公路客运量。

Zi (i=1,2,3,4)依次表示由人口数量,机动车数量,公路面积,年份预测出的公路客运量。

ai (i=1,2,3,4)依次表示人口数量,机动车数量,公路面积,2010年Bi (i=1,2,3,4)依次表示人口数量,机动车数量,公路面积,2011年3、问题分析运输需求预测是公路网规划、区域发展规划、基础建设投资决策及运输生产组织管理的基础,对交通运输需求的预测分析具有重大的社会意义和经济意义。

可见,公路货运量的预测举足轻重,可靠的预测结果是进行规划的前提,决定着整个规划的成功。

公路货运量的预测方法有很多,由于不同的预测模型的预测机理不同,往往能提供不同的有用信息,反而单独采用某一种模型往往有其局限性,因此可以根据不同的情况选择不同的预测模型。

本文将运用BP神经网络组合预测模型、excel中的线性回归解决公路货运量的预测。

并进行比较两种方法的优势与缺陷。

4、基本假设1)公路运量主要与人数、机动车数量、公路面积相关;2)公路运量次要与年份挂钩;3)公路运量不受道路破坏及其他不可抗力的影响;4)公路运量不受其他公路的影响;5)公路运量不受车祸等人为因素影响。

5、模型的建立与求解5.1、BP神经网络预测公路货运量。

5.1.1、BP神经网络组合预测模型背景介绍BP神经网络组合预测模型是一种组合预测模型,组合预测一般是指将两种或者两种以上的预测方法所得到的预测结果选取适当的权重进行加权平均的预测方法。

交通运输是国家重要的基础产业,对国民经济的发展有着举足轻重的作用,同时对区域产业经济结构的发展也有直接的影响.公路运输系统作为交通运输系统的一个子系统,在交通运输系统中的主导作用也日益凸显.近年来,我国交通基础设施和运输装备不断改善,为公路运输市场的快速发展创造了有利条件.在公路运输生产中,公路运输量是反映交通运输业生产成果的重要指标。

随着计算机技术和神经网络技术的日趋成熟,许多学者应用神经网络技术对货运量进行预测;一些学者应用神经网络技术和其它预测方法(如灰色理论、二元回归模型、弹性系数法等)建立的公路货运量组合预测模型具有较高的预测精度.研究表明,目前基于BP神经网络的公路运输量预测研究中,以对公路运输运量(客货运量)的预测,尤其对货运量的预测居多.反映公路产量的指标还有客货周转量,它更能综合反映公路运输部门为社会提供运输服务的能力,对公路网规划、建设和管理更具有指导意义.本文应用BP神经网络预测方法,建立福建省公路旅客周转量和货物周转量的预测模型,并对其进行科学预测.5.1.2 MATLAB应用于BP神经网络的货运量组合预测模型MATLAB(MArrrix LABoratory)提供的神经网络T具箱(NNToo1)是其开发的多种T具箱之一,该工具箱提供了很多简单实用的函数,可以大大简化编程的丁作量MATLAB应用于BP神经网络进行货运量组合预测计算,其主要计算步骤如下。

1.数据预处理由于神经元的响应函数为Sigmoid函数,因此输入值(输出值)都在(0,1)之间,必须对样本进行预处理。

具体可以采用下式对单项预测值进行预处理:(4)输值的处理为:(5)据式(5)进行处理之后,即可得到预测值。

2.确定网络结构,初始化权重确定网络结构主要是确定隐层的神经元个数。

隐层神经元个数太多会降低网络的泛化功能.而且会使训练时间加长,降低系统的效率:太少则不能达到所要求的训练误差。

一般根据试算确定,也可以参考以下公式:,其中f为隐层神经元个数,n、m分别为输入神经元个数和输出神经元个数。

初始化网络的权值和阈值.可以采用MATLAB提供的初始化函数newff()建立一个BP神经网络:BTF,BLF,PF、式中,P为输入矩阵;【S1,S2,⋯,Sn】表示隐含层和输出层神经元的个数;[TF1,,⋯,TN1]表示网络隐含层和输出层的传输函数: 1表示网络的反向训练函数:BLF表示网络的反向权值学习函数; 1表示性能数;net为新生成的BT神经网络。

3.网络训练MATLAB提供了许多训练不同神经网络的函数,使得对神经网络的训练变得异常简单,其中,由动量的梯度下降法中附以自适应,r的训练函数为traingdx.函数的结构为:其中,net,P S1,S2,⋯,5 ,[ l,TF2,⋯,TNI]的意义同上。

当网络的训练达到了最大训练次数,或者是网络的误差平方和小于期望最小误差值时,网络就会停止训练。

4.对训练好的网络进行检验,判断是否具有良好的泛化功能把样本输入训练好的网络中,判断输出值是否与已知的样本值相符,如果相符,即说明该网络具有很好的泛化功能,能够应用于预测计算;否则,就要调整网络.或者增大训练的样本数,对网络进行再次训练。

该过程可以采用MATLAB中的函数sim()来实现。

sire的表达式为:A=sire(net,P),其中,4为输出数据,P为输入样本数据,其他参数意义同前。

该过程还可以用传递函数分步实现。

5.用训练好的网络进行模拟预测,得到所要的预测值通过预测的过程和所采用的函数进行模拟,输入数据P为要预测的输人数据,输出数据A就是所要得到的预测数据。

从而通过训练好的网络进行模拟预测,得到所要的预测值。

5.1.3、运用BP网络建模应用公路货运量预测根据题意得知某地区1990年到2009年的人口机动车数量,公路面积以及公路客运量和货运量的数据如下,需要预测2010年和2011年该地区的公路客运量和货运量。

我们可以把该问题分解为六个模块:运用MATLAB软件编程建立模型来解决问题,代码如下:1.原始数据的输入;clcclearsqrts=[20.55 22.44 25.37 27.13 29.45 30.1 30.96 34.06 36.42 38.09 39.13 39.99 41.93 44.59 47.3 52.89 55.73 56.76 59.17 60.63];sqjdcs=[0.6 0.75 0.85 0.9 1.05 1.35 1.45 1.6 1.7 1.85 2.15 2.2 2.25 2.35 2.5 2.6 2.7 2.85 2.95 3.1];sqglmj=[0.09 0.11 0.11 0.14 0.2 0.23 0.23 0.32 0.32 0.34 0.36 0.36 0.38 0.49 0.56 0.59 0.59 0.67 0.69 0.79];glkyl=[5126 6217 7730 9145 10460 11387 12353 15750 18304 19836 21024 19490 20433 22598 25107 33442 36836 40548 42927 43462];glhyl=[1237 1379 1385 1399 1663 1714 1834 4322 8132 8936 11099 11203 10524 11115 13320 16762 18673 20724 20803 21804];2.数据归一化;p=[sqrts;sqjdcs;sqglmj];t=[glkyl;glhyl];[pn,minp,maxp,tn,mint,maxt]=premnmx(p,t);dx=[-1 1;-1 1;-1 1];3.网络训练;net=newff(dx,[3,2],{'tansig','tansig','purelin'},'traingdx'); net.trainParam.show=1000;net.trainParam.Lr=0.05;net.trainParam.goal=0.65*10^(-3);net.trainParam.epochs=50000;net=train(net,pn,tn);4.对原始数据进行仿真;an=sim(net,pn);a=postmnmx(an,mint,maxt);5.将原始数据仿真结果与样本进行对比;x=1990:2009;newk=a(1,:);newh=a(2,:);figure(2);subplot(2,1,1);plot(x,newk,'r-o',x,glkyl,'b--+');legend('网络输出客运量','实际客运量');xlabel('年份');ylabel('客运量/万人');title('运用工具箱客运量学习和测试对比图');subplot(2,1,2);plot(x,newh,'r-o',x,glhyl,'b--+');legend('网络输出货运量','实际货运量');xlabel('年份');ylabel('货运量/万人');title('运用工具箱客运量学习和测试对比图');6.对新数据进行仿真;pnew=[73.79 75.553.96354.09750.9880 1.0268];pnewn=tramnmx(pnew,minp,maxp);anewn=sim(net,pnewn);anew=postmnmx(anewn,mint,maxt)5.1.4、程序运行结果anew =1.0e+004 *4.3370 4.33722.1770 2.1771也就是说2010年和2011年的公路客运量分别为 43370万人和43372万人;货运量分别为21770万吨和21771万吨。

相关主题