一种钢筋价格预测方法、系统及平台与流程

文档序号:11276953阅读:224来源:国知局
一种钢筋价格预测方法、系统及平台与流程

本发明涉及土木工程领域,特别是涉及一种钢筋价格预测方法、系统及平台。



背景技术:

对于成本预测研究,国外的一些发达国家研究的较早,十九世纪末期,一系列学者通过努力开创科学管理理论,出现了标准成本制度。近年来,成本预测方法也得到改进与发展,大多数学者运用多种方法组合来实现成本的预测。现有研究针对案例推理法的不足,进行改进,并且组合运用遗传算法,多元线性回归方法和人工神经网络三种方法,构建成本预测模型。

随着我国市场经济的发展,成本的预测对于建设项目而言至关重要,受到传统方式局限性影响,越来越多的学者开始结合软件数据库对成本预测方法进行深入研究。

施工单位在施工之前以经验为主,对成本进行一个大概的估计,预测方式尚未形成体系,未将成本预测工作与之后的进度相结合制定更合理的采购备料方案,成本控制等工作综合考虑,缺乏系统性。使用方法考虑因素不周全、不尽合理。在成本预测过程中缺乏对数据的整理分析,未全面考虑各种影响成本的不确定因素,未实现事前动态预测。

钢筋用量在建筑工程所占的比例很大,钢筋的价格更是对建筑造价具有很大的影响,原因是钢筋的价格波动较大,影响其价格变化因素十分复杂多样。而目前尚未开发设计出钢筋价格计价预测功能。



技术实现要素:

本发明的目的是提供一种钢筋价格预测方法、系统及平台,能够对钢筋的价格进行准确的预测。

为实现上述目的,本发明提供了如下方案:

一种钢筋价格预测方法,所述方法包括:

获取训练样本,所述训练样本为钢筋的历史价格;

采用matlab中的神经网络工具对所述训练样本进行训练,得到钢筋价格预测模型;

将所述钢筋的待预测月份之前n个月的历史价格输入所述预测模型,所述n个月份为与待预测月份相邻的月份,n为正整数;

所述预测模型输出所述钢筋的预测价格。

可选的,所述采用matlab中的神经网络工具对所述训练样本进行训练,得到钢筋价格预测模型,具体包括:

设定bp神经网络的隐层函数为双曲正切函数tansig;bp神经网络的输出层激励函数为线性purelin函数;网络训练函数为train;隐层神经元数初设为12;设定网络迭代次数设置为2000次,期望误差设为9.5238e-004,学习速率设为0.05;

将所述训练样本千分之一化,并输入bp神经网络,所述bp神经网络为含有一个隐层的三层多输入多输出bp网络;

开始训练网络,得到钢筋价格预测模型。

本发明还提供了一种钢筋价格预测系统,所述系统包括:

样本获取模块,用于获取训练样本,所述训练样本为钢筋的历史价格;

预测模型建立模块,用于采用matlab中的神经网络工具对所述训练样本进行训练,得到钢筋价格预测模型;

价格预测模块,用于将所述钢筋的待预测月份之前n个月的历史价格输入所述预测模型,所述n个月份为与待预测月份相邻的月份,n为正整数;

预测结果输出模块,用于所述预测模型输出所述钢筋的预测价格。

可选的,所述预测模型建立模块,具体包括:

参数设置单元,用于设定bp神经网络的隐层函数为双曲正切函数tansig;bp神经网络的输出层激励函数为线性purelin函数;网络训练函数为train;隐层神经元数初设为12;设定网络迭代次数设置为2000次,期望误差设为9.5238e-004,学习速率设为0.05;

样本处理单元,用于将所述训练样本千分之一化,并输入bp神经网络,所述bp神经网络为含有一个隐层的三层多输入多输出bp网络;

训练单元,用于开始训练网络,得到钢筋价格预测模型。

本发明还提供了一种钢筋价格预测平台,所述钢筋价格预测平台包括权利要求3或4中任意一项权利要求所述的钢筋价格预测系统,所述钢筋价格预测平台还包括软件界面功能模块,所述软件界面功能模块包括用户模块、管理员模块和所述钢筋价格预测系统中的价格预测模块,所述用户模块包括用户注册子模块、用户登录子模块、数据查询子模块,所述管理员模块包括用户管理子模块和数据管理子模块。

可选的,所述钢筋价格预测平台还包括数据库,所述数据库为基于ifc标准的bim数据库,所述数据库构建在sqlserver上,并利用visualstudio进行应用接口的开发,开发语言环境为c++。

可选的,所述数据库存储有多条钢筋数据,每条所述钢筋数据设置有专属id,每个id中包含所述钢筋所述项目的项目编码、项目名称、项目特征、计量单位、钢筋价格。

可选的,所述钢筋价格预测系统与所述数据库相连接,所述筋价格预测系统通过调用所述数据库中存储的所述钢筋数据来完成钢筋价格的预测。

可选的,所钢筋价格预测平台的网络拓扑结构为b/s结构,客户机通过浏览器与所述钢筋价格预测平台的数据库进行交互。

可选的,钢筋价格预测平台采用visualc++与matlab混合编程。

根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明通过采用matlab中的神经网络工具对所述钢筋的历史价格样本进行训练,得到钢筋价格预测模型,采用钢筋价格预测模型来对钢筋未来的价格进行预测,此方法能够较为准确的预测钢筋的价格。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例钢筋价格预测方法流程图;

图2为本发明实施例钢筋价格预测系统图;

图3为本发明实施例hrb400螺纹钢2016年2到11月的市场价格统计图;

图4为本发明实施例价格预测模型的输入矩阵示意图;

图5为本发明实施例hrb400螺纹钢的价格期望值和预测输出值对比图;

图6为本发明实施例hrb300线材钢筋的市场价格统计图;

图7为本发明实施例hrb300线材钢筋7~12月的价格期望值和预测输出值对比图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种钢筋价格预测方法、系统及平台,能够对钢筋的价格进行准确的预测。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

图1为本发明实施例钢筋价格预测方法流程图,如图1所示,本发明提供的钢筋价格预测方法步骤如下:

步骤101:获取训练样本,所述训练样本为钢筋的历史价格;

步骤102:采用matlab中的神经网络工具对所述训练样本进行训练,得到钢筋价格预测模型;

步骤103:将所述钢筋的待预测月份之前n个月的历史价格输入所述预测模型,所述n个月份为与待预测月份相邻的月份,n为正整数;例如采用每个月份钢筋的历史价格对神经网络进行训练,预测时,比如利用前5个月的价格来预测第6个月的价格。如用第1~6月的价格预测未来第7个月的钢筋价格,2~6预测第8个月钢筋价格,以此类推。

步骤104:所述预测模型输出所述钢筋的预测价格。

其中,步骤102具体包括:设定bp神经网络的隐层函数为双曲正切函数tansig;bp神经网络的输出层激励函数为线性purelin函数;网络训练函数为train;隐层神经元数初设为12;设定网络迭代次数设置为2000次,期望误差设为9.5238e-004,学习速率设为0.05;

将所述训练样本千分之一化,并输入bp神经网络,所述bp神经网络为含有一个隐层的三层多输入多输出bp网络;

开始训练网络,得到钢筋价格预测模型。

本发明还提供了一种钢筋价格预测系统,如图2为本发明实施例钢筋价格预测系统图,如图2所示,所述系统包括:样本获取模块201,用于获取训练样本,所述训练样本为钢筋的历史价格;预测模型建立模块202,用于采用matlab中的神经网络工具对所述训练样本进行训练,得到钢筋价格预测模型;价格预测模块203,用于将所述钢筋的待预测月份之前n个月的历史价格输入所述预测模型,所述n个月份为与待预测月份相邻的月份;预测结果输出模块204,用于所述预测模型输出所述钢筋的预测价格。

其中,所述预测模型建立模块202,具体包括:

参数设置单元,用于设定bp神经网络的隐层函数为双曲正切函数tansig;bp神经网络的输出层激励函数为线性purelin函数;网络训练函数为train;隐层神经元数初设为12;设定网络迭代次数设置为2000次,期望误差设为9.5238e-004,学习速率设为0.05;

样本处理单元,用于将所述训练样本千分之一化,并输入bp神经网络,所述bp神经网络为含有一个隐层的三层多输入多输出bp网络;

训练单元,用于开始训练网络,得到钢筋价格预测模型。

本发明提供的钢筋价格预测方法及系统通过采用matlab中的神经网络工具对所述钢筋的历史价格样本进行训练,得到钢筋价格预测模型,采用钢筋价格预测模型来对钢筋未来的价格进行预测,此方法能够较为准确的预测钢筋的价格。

本发明还提供了一种钢筋价格预测平台,所述钢筋价格预测平台包括本发明提供的钢筋价格预测系统,所述钢筋价格预测平台还包括软件界面功能模块,所述软件界面功能模块包括用户模块、管理员模块和所述钢筋价格预测系统中的价格预测模块,所述用户模块包括用户注册子模块、用户登录子模块、数据查询子模块,所述管理员模块包括用户管理子模块和数据管理子模块。

优选的,所述钢筋价格预测平台还包括数据库,所述数据库为基于ifc标准的bim数据库,所述数据库构建在sqlserver上,并利用visualstudio进行应用接口的开发,开发语言环境为c++。

优选的,所述数据库存储有多条钢筋数据,每条所述钢筋数据设置有专属id,每个id中包含所述钢筋所述项目的项目编码、项目名称、项目特征、计量单位、钢筋价格。

优选的,所述钢筋价格预测系统与所述数据库相连接,所述筋价格预测系统通过调用所述数据库中存储的钢筋数据来完成钢筋价格的预测。

优选的,所钢筋价格预测平台的网络拓扑结构为b/s结构,客户机通过浏览器与所述钢筋价格预测平台的数据库进行交互。

优选的,钢筋价格预测平台采用visualc++与matlab混合编程。

作为本发明的又一实施例,本发明提供的钢筋价格预测平台的基础软件编程使用c语言,c++,java等计算机编程语言,根据系统功能设计模块开发出最基本的网页,浏览器通过webserver同数据库进行数据交互,基于ifc标准的bim数据库构建在sqlserver上,并利用visualstudio进行应用接口的开发,开发语言环境为c++。建立matlab算法与vc++的接口,用户通过引擎调用函数,用户在使用时,从界面找到预测功能模块,输入需要预测的钢筋价格预测数据,本发明就会预测出最终的数据提供给用户,用户从而根据预测的钢筋价格调整进料备料方案在施工过程中保证利益最大化。

本发明在构建钢筋价格预测平台时,根据系统功能模块设计开发出软件界面,按功能分块使用c++、c语言,java等编程语言开发出基础用户使用界面。

根据网络拓扑图设置系统网络结构。本发明选用的是b/s结构(browser/server,浏览器/服务器模式),客户机上只要安装一个浏览器internetexplorer,服务器安装sqlserver、oracle、mysql等数据库。浏览器通过webserver同数据库进行数据交互。

根据visualc++与matlab混合编程,建立matlab算法与vc++的接口。

基于ifc标准的bim数据库构建在sqlserver上,并利用visualstudio进行应用接口的开发,开发语言环境为c++。

其中,功能模块包括用户模块、bp预测模块、管理员模块。用户模块又分为用户注册子模块、用户登录子模块、数据查询子模块。bp预测模块又分为数据预测子模块和数据处理子模块。管理员模块又分为用户管理子模块和数据管理子模块。数据查询子模块可以给用户提供所要查询的全国或者所在地区的各个时间,各个型号尺寸的钢筋价格。用户可以任意选择要查询已存入的数据。也可以根据用户共享的信息进行查询。这个是有权限设置,用户自主选择存储的数据是否共享或者隐藏。系统信息实时更新。数据处理子模块包括输入,分类,存储。依据ifc标准对用户输入的数据进行处理而经过基于ifc标准数据库处理过后的数据,导入导出通用于各个bim系统。标准化的数据实现各个系统之间的数据通用。数据预测子模块根据用户需要自主选择要预测的型号,尺寸,时间。可以选择预测单个时间段的或者同时预测多个时间段的钢筋的价格通过后台编程启动matlab进行预测。

网络拓扑图使用三层架构(3-tierapplication)将整个业务应用划分为:表现层(客户端)、业务逻辑层(中间层)、数据访问层(数据源层)。表现层(ui):在终端展现给用户的界面。业务逻辑层(bll):对数据层的操作,主要负责数据业务逻辑处理。数据访问层(dal):是直接对bim数据库的操作,针对数据的增添、删除、修改、更新、查找等。

本发明采用visualc++与matlab混合编程,用户通过引擎调用函数。本发明提供了可以操作引擎的函数,通过这些函数,将应用程序的预测功能交给引擎完成,而界面部分则通过用户自主输入钢筋的价格或者选择的价格来实现预测,这样通过后台自动切换matlab进行预测。

本发明是基于ifc标准bim数据库的的设计,对每条输入的钢筋数据设置专属id,每个id中包含项目编码,项目名称,项目特征,计量单位,钢筋价格等信息。bim数据库可以对多个钢筋的多个ifc文件进行存储,为了使每条语句都可以被唯一识别,需定义专属的id来使数据库中每条语句可以被唯一识别。

网络结构设计由三层bp网络结构组成,输入层、隐含层、输出层。隐层设计采用含有一个隐层的三层多输入多输出的bp网络建立预测模型。在选取隐层神经元个数的问题上参照了以下的经验公式:其中,n为输入层神经元个数,m为输出层神经元个数,a为[1,10]之间的常数。预测选用matlab中的神经网络工具箱进行网络的训练,预测模型的具体实现步骤如下:将训练样本数据千分之一化输入网络,设定网络隐层和输出层激励函数双曲正切函数tansig和线性purelin函数,网络训练函数为train,隐层神经元数初设为12。设定网络参数。网络迭代次数epochs为2000次,期望误差goal为9.5238e-004,学习速率lr为0.05。设定完参数后,开始训练网络。

预测流程首先对采集整理的历史数据进行预处理,输入处理过后的数据,然后初始化bp神经网络,开始训练如果训练后的精度达到要求就输出结果,如果未达到要求就返回上一步骤继续训练直到满足精度为止,最后输出预测结果。

本发明提供的平台具体的工作过程如下:用户启动web浏览器,向网络上的某一web服务器集群提出服务请求,web服务器对用户身份进行验证后,用http协议把所需的页面传回给客户端,用户根据自身需要,随时随地的对数据进行查询,共享,删除,保存等。web服务器集群接收用户的请求,首先需要执行bp人工神经网络应用程序与bim数据库进行连接,将bp预测程序编写在能运行应用web服务器集群上,通过sql等方式向bim数据库服务器提出数据处理请求,触发中间件,切换运行bp预测模式,完成预测之后bim数据库服务器返回数据处理结果后,再把预测数据传送给客户端。用户可以直接对bim数据库的操作,针对数据的增添、删除、修改、更新、查找等。bim数据库服务器接收web服务器集群对bim数据库操纵的请求,如对bim数据库进行查询、修改、更新等,处理完毕后将结果返回给web服务器集群。

客户机上只要安装一个浏览器internetexplorer,服务器安装sqlserver、oracle、mysql等数据库。浏览器就通过webserver同数据库进行数据交互。用户启动web浏览器向网络上的某一web服务器集群提出服务请求,web服务器对用户身份进行验证后用http协议把所需的页面传回给客户端,用户根据自身需要,随时随地查询,共享,删除,保存数据。

用户可以直接对bim数据库的操作,针对数据的增添、删除、修改、更新、查找等。bim数据库服务器接收web服务器集群对bim数据库操纵的请求,如对bim数据库进行查询、修改、更新等,处理完毕后将结果返回给web服务器集群。

最后用户对数据进行预处理后,直接在该系统输入钢筋价格历史数据对bp神经网络进行训练。web服务器集群接收用户的请求,首先需要执行bp人工神经网络应用程序与bim数据库进行连接,将bp预测程序编写在能运行应用web服务器集群上,通过sql等方式向bim数据库服务器提出数据处理请求,触发中间件,切换运行bp预测模式,完成预测之后bim数据库服务器返回数据处理结果后,再把预测数据传送给客户端。

以2016年中铁航空港建设集团有限公司承建的沈阳市南北快速干道第三标段项目施工期间hrb400螺纹钢和hrb300线材单价预测为例,利用bp人工神经网络模型进行价格预测。该项目hrb400螺纹钢2016年2到11月的市场价格参见图3。

在输入预测数据前,对数据进行预处理,一般会对数据进行归一化处理,处理过后的数据都在(0,1)的范围内,归一化处理过后的数据能得到比较准确的预测数据。但由于预先进行归一化处理实际上比较繁琐,本发明提供的实施例在确保误差在可接受的范围内,使用输入单位为千元/t,能够使用户方便快速准确得出预测的结果。本实施例运用前5个月的价格来预测第6个月的价格,如用第1~6月的价格预测未来第7个月的钢筋价格,2~7预测第8个月钢筋价格,以此类推。所有数据用矩阵表示,如图4所示,图4为本发明实施例价格预测模型的输入矩阵示意图。将矩阵输入价格预测模型,得到预测结果。图5为本发明实施例hrb400螺纹钢的价格期望值和预测输出值对比图。

图6为本发明实施例hrb300线材钢筋的市场价格统计图,图7为本发明实施例hrb300线材钢筋7~12月的价格期望值和预测输出值对比图。由图5、图7可以看出,利用bp人工神经网络预测的钢筋价格和实际价格相比,误差小、准确率高,预测的数据真实可靠。

本发明通过采用matlab中的神经网络工具对所述钢筋的历史价格样本进行训练,得到钢筋价格预测模型,采用钢筋价格预测模型来对钢筋未来的价格进行预测,此方法能够较为准确的预测钢筋的价格。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1