基于JAVA与MATLAB实现投资预测应用
2017-04-15江苏苏源高科技有限公司王征美
江苏苏源高科技有限公司 王征美
基于JAVA与MATLAB实现投资预测应用
江苏苏源高科技有限公司 王征美
有效运用Matlab和Java集成开发,结合投资预测模型算法,较便捷地实现投资预测应用功能,为投资管理提供信息系统支撑。
多元线性回归;BP神经网络;灰色系统
引言
MATLAB矩阵工厂,用于算法开发、数据可视化、数据分析以及数值计算,其强大而高效的处理功能,让人们从繁杂的数学运算分析中解脱出来。而JAVA是一种跨平台,适合于分布式计算环境的面向对象编程语言。本文主要介绍运用两者的优势相结合,共同实现投资预测的应用。
1.建设目标
充分利用信息化手段辅助实现投资计划预测,为有效管控和科学安排年度投资计划,优化资源配置提供信息系统支撑。通过对投资影响因素及历史数据分析,科学预测,为投资计划提供理论依据。
2.系统架构
2.1 业务架构
通过投资预测管理应用功能的建设,收集基础数据,运用多元线性回归、BP神经网络、灰色系统、组合算法相结合,建立投资预测模型。
多元回归分析预测法[1],是指通过对两个或两个以上的自变量与一个因变量的相关分析,建立预测模型进行预测的方法。当自变量与因变量之间存在线性关系时,称为多元线性回归分析。根据历史的样本数据,建立多元线性回归的预测模型;从而在不需要未来样本数据的情况下,预测未来时刻多元线性回归模型中的回归参数[2]。
BP神经网络算法是一种有监督式的学习算法,其主要思想是:输入学习样本,使用反向传播算法对网络的权值和偏差进行反复的调整训练,使输出的向量与期望向量尽可能地接近,当网络输出层的误差平方和小于指定的误差时训练完成,保存网络的权值和偏差[3]。
灰色预测(GM)通过鉴别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况[4]。组合算法是一种基于群体智能的新兴演化计算技术,广泛用于解决科学研究和工程实践中的优化问题。
2.2 应用架构
投资预测系统基于统一门户登录,集成统一权限,主要包括:基础数据、基本算法、组合算法、预测分析四个模块。
基础数据部分,包括:历年GDP、售电量、统调负荷、实际投资额等数据收集。
基本算法部分,包含:线性回归分析、BP神经网络、灰色系统三个基本算法,提供按单位、年度、电压等级等筛选方式。
组合算法分布,包含:系数调整设置、组合算法功能。根据实际业务需要,调整基本算法计算出的系数值,从而进行组合优化计算。
预测分析部分,将四种算法计算结果和实际投资进行对比分析展示,便于直观浏览。
2.3 技术架构
系统采用多层架构的技术方式,分为视图层、控制层、业务逻辑层、数据访问层,通过各层次系统组件间服务的承载关系,实现系统功能。
视图层主要完成用户交互功能。数据的展示主要使用Extjs、HightChart组件完成,向服务器提交的数据提交到后台的Action类进行处理。
控制层使用Struts的Action来实现,通过内置MVC开发模式分离页面数据处理、流转控制、页面生成。控制层调用业务逻辑层进行业务处理。
业务逻辑层由一系列Service组成,主要进行业务处理,每个Service是一组紧密关联的业务功能。业务逻辑层用JavaBean来实现业务逻辑层功能,用MatLab来实现线性回归、BP神经网络、灰色系统、组合优化四个核心算法模型。
数据访问层主要负责访问关系数据库等数据源并把数据转换为Java对象供其它层的程序调用。
3.系统实现
用Matlab和JAVA共同实现投资预测应用,依据业务模型可以并行实现Matlab算法类库和JAVA应用功能。
1)首先要配置环境变量,JAVA和Matlab使用的JDK运行环境保持一致,便于调试成功。
2)接着用MyEclipse建立web应用,实现基础数据收集、投资预测的页面展示功能。
3)可以并行用MatLab建立一个Project,利用MatLab强大的函数功能实现多元线性回归算法、BP神经网络算法、灰色系统算法、组合算法,建立不同的M文件,测试验证后打成Jar文件。
4)将MatLab生成的javabuilder.jar和mat.jar包拷贝到MyEclipse工程的lib中,即可实现Java调用Matlab的函数。
5)若系统是在Linux环境下部署,需在Linux环境安装MCRInstaller,并配置运行时环境变量。
4.结语
项目实践过程表明,利用MATLAB和JAVA进行优势互补,缩短了开发时间,降低了实现复杂度,让人们可以更多地关注业务模型的建立,用户交互体验设计方面,拓展了技术实现的可行性。
[1]王华丽.多元线性回归分析实例分析[J].科技资讯,2014,12(29):22+24.
[2]王惠文,孟洁.多元线性回归的预测建模方法[J].北京航空航天大学学报,2007,(04):500-504.
[3]梁海峰,涂光瑜,唐红卫.遗传神经网络在电力系统短期负荷预测中的应用[J].电网技术,2001,(01):49-53.
[4]王成山,杨军,张崇见.灰色系统理论在城市年用电量预测中的应用——不同预测方法的分析比较[J].电网技术,1999,(02):17-20.