




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕毕 业业 论论 文文 农产品价格预测方法及其农产品价格预测方法及其 Web 预测服务设计预测服务设计 洪洒洪洒 200630560306 指导教师 杨振刚杨振刚 讲师讲师 学院名称信息学院信息学院 专业名称信息管理与信息系统信息管理与信息系统 论文提交日期2010 年 5 月 论文答辩日期 年 月 答辩委员会主席 评 阅 人 摘 要 农产品价格波动主要是市场经济机制下的供应和需求等方面引起的 能够准确的预 测农产品价格 对于政府相关部门控制价格 稳定农产品市场让其健康发展有着重要的 意义 在农产品价格预测上众多学者做过研究 但研究成果很少普及用到网络系统上 本次研究总结和利用前人研究成果 使用 ARIMA 模型来预测农产品价格未来的走势 并开发个 Web 系统 本文首先分析与比较了单指数平滑 双指数平滑 自回归单整移动平均法 季节自 回归单整移动平均法这四种农产品价格预测方法 发现季节自回归移动平均法最能够准 确预测未来农产品价格走势 在 Web 系统开发方面 首先进行需求分析 系统设计 然后编写与调试各功能模块 最后展示网站系统实的基本功能 系统最终能够提供农产 品价格预测服务 并为第三方软件提供一个访问接口 系统支持技术选择 JSP 技术和 Struts 框架技术 JSP 同样继承了 Java 技术简单 便利 面向对象 跨平台和安全可靠的优点 比起其他服务器脚本语言 JSP 更加简单 迅速 和有力 Struts 是典型的 MVC 结构实现框架 它分离软件系统模型 视图 控 制器三个部分 提高软件可维护性 关键词 农产品 价格预测 指数平滑 ARIMA JSP 目 录 1 绪论 1 1 1 研究背景 1 1 2 国内外研究现状 1 1 2 1 预测方法进展 1 1 2 2 计算机应用领域 2 1 3 研究内容与方法 3 2 预测方法相关原理与研究分析 3 2 1 数据获取与预处理 3 2 2 时间序列分析法 3 2 3 指数平滑法 3 2 3 1 指数平滑模型的发展 4 2 3 2 指数平滑法的优点 4 2 3 3 单指数平滑法对小白菜价格的预测 4 2 3 4 双指数平滑法对小白菜价格的预测 7 2 4 ARIMA 模型 8 2 4 1 建模基本程序 8 2 4 2 模型识别与估计 9 2 4 3 ARIMA 模型的诊断 11 2 4 4 模型预测 12 2 4 5 模型优化 13 2 5 预测方法性能比较与分析 15 3 系统支持技术 16 3 1 B S 结构 16 3 2 JSP 技术 17 3 3 框架技术 17 3 4 Struts 框架中的 MVC 模式 18 4 系统需求分析 19 5 系统设计 20 5 1 系统总体结构设计 20 5 2 系统服务设计 21 5 2 1 农产品价格预测服务设计 21 5 2 2 第三方软件接口服务设计 21 5 3 数据库设计 22 5 4 系统详细设计 23 5 4 1 用户 管理员与系统交互 23 5 4 2 农产品价格预测服务详细设计 24 6 系统实现 27 6 1 农产品价格预测实现 27 6 2 农产品行情查询实现 29 6 3 添加修改价格信息的实现 30 7 总结与展望 32 7 1 总结 32 7 2 展望 32 致谢 33 参考文献 34 英文摘要 35 附录 36 华南农业大学本科专业毕业论文成绩评定表 45 1 绪论 1 1 研究背景 近年来 人们对大宗农产品的需求呈现大量化 多样化 优质化和动态化的趋势 与农产品生产规模小 生产有季节性 区域性 分散性等特点产生矛盾 传统农产品流 通领域存在中介环节多 信息不对称 交易成本高 流通效率低等一系列问题 难以适 应新的市场发展形势 严重地阻碍了农产品市场的发展 1 1 流通成本高 中国农产品流通领域中介主体过多 产销流通链过长 导致流 时间长 市场效率低 农产品零售价和收购价之间差价一般在 3 10 倍之间 造成种差 价的重要原因就是农产品的流通成本居高不下 包括运输成本 储藏成本 运营成本 2 流通半径小 农产品具有区域性 季节性和分散性等特点 而消费者对农品 具有全年普遍性 多样性 变化性的需求 因此各种农产品需要经常在不同区域进行运 输流通以满足各地消费者的需求 然而 高流通成本限制了农产品的流通半径 造成农 产品在产地市场供过于求 贱价销售 而在销地市场却供不应求 价格飘升的市场分割 局面 3 市场体系功能落后 一是市场形成价格稳定性差 中国农产品批发市场大数 规模较小 地域分散 产品和信息隔离 难以形成交易集中 市场透明度高 竞争充分 的市场环境 导致农产品价格波动较大 区域价格差异明显 二是市场交易方式原始 中国农产品批发市场主要采用 一对一 交易方式 交易规模小 次数多 信息搜寻难 度大 市场透明度低 形成的价格不能正确地反映供求关系 三是市场信息服务差 许 多批发市场的信息建设基本处于空白 信息的传递效率和共享度低 对信息的搜集 加 工 处理 发布能力低下 容易造成信息的扭曲和失真 能够准确的预测农产品价格 对于政府相关部门控制价格 稳定农产品市场让其健 康发展有着重要的意义 农产品价格预测宏观上可以帮助政府管理部门调整政策方向 微观上为农民提供即时的市场信息 降低生产和经营成本 增强农民抗御市场风险的能 力 促进农民增收 本文据此提出研究预测方法 对农产品价格进行预测 避免盲目经 济行为 繁荣农村经济 与研究的同时 开发一个 Web 系统 让生产者 经营者 消 费者通过系统平台了解当前行情信息和未来农产品价格走势 提高市场信息服务水平 1 2 国内外研究现状 1 2 1 预测方法进展 中国科学院数学与系统科学研究院汪寿阳研究员带领的中国外贸进出口预测和国际 收支预警系统研究小组应用宏观管理与政策 宏观经济学 国际金融学等学科的基础知 识 并大量地使用了时间序列分析 应用概率统计 数学规划 决策分析 模拟与评估 管理信息系统与决策支持系统等学科的专门技术 在非线性预测技术 定量与定性综合 集成等理论和方法上做出了一系列的创新性工作 例如 他们将先进的计量分析模型 1 与人工神经元网络模型和主成分分析技术等相结合 运用一些数学方法解决了人工神经 元网络模型预测模型中的若干技术难题 使得预测模型能够适应经济转型国家结构性变 化的特征 不仅大大提高了预测精度 而且丰富了预测技术 他们将文本挖掘 Text 2 mining 技术 传统的计量经济模型 Econometrics 人工智能技术 Intelligence 如 神经网络 专家系统 模糊逻辑等 综合集成起来 提出了一个 TEI I 综合集成预测 方法 他们不单单是提出一个抽象的方法 而且还将此方法具体化和实用化 开发了一 个基于此方法的计算机集成系统 TEI I 方法突破了过去定性与定量综合集成方法中定 性分析主要由系统操作者进行的模式 而是对互联网上广泛存在的观点进行挖掘和综合 同时也体现了经济变量随经济参与者思想变化而变化的特征 他们在分析外汇波动对 3 进出口的影响时 把微观经济分析的压力测试方法 情景分析方法等工具引进到宏观经 济分析中 不仅被国外的学者评论为首创性思想 所得的到研究成果很好地解释了国际 经济变动对我国经济 特别是对我国国际收支的影响 较好地支持了国际贸易政策的制 订 他们运用这些新的研究方法 不仅得到一批领先性结果 而且有新的发现 如他们 建立了一个汇率动态演化的一般均衡模型 推导出自愿退出固定汇率制度和被迫退出固 定汇率制度的宏观经济条件 2 1 2 2 计算机应用领域 由中国农业科学院科技文献信息中心主持 北京理工大学和广东省农科院情报所参 加共同完成的国家 十五 科技攻关计划专题 农产品市场信息分析预测网络化平台 研究 的阶段性成果 农产品市场信息分析预测网络化平台 开发成功了我国第一个在 LINUX 操作系统 Web 服务器 APACHE 和 TOMCAT 以及 Oracle 数据库管理系统环境 下实现基于 XML 和 Java 以及其他 Internet 技术综合集成的农产品市场信息分析预测网 络化平台 建立了在多种预测模型集成基础上的农产品市场信息综合预测模式 并以粮 食生产为例 有效地将经济政策 价格和气象因子的影响综合于粮食生产定量化分析模 型中 首次在网络环境下实现了用户远程信息分析与预测 理论和方法上有创新 这一 成果具有明显的特色和较大的应用价值 制定了农产品预测基本数据 XML 标准词汇表 提出并实现了 一站式 农产品信息发布与交易网络化服务技术 解决了农产品信息网络 化服务的技术问题 对于推动农产品信息交换与处理规范化 标准化 促进农业信息化 发展 具有积极作用 据专题主持人赵瑞雪博士和张峭博士介绍 该研究成果已在广东 省广州农业信息网 农业科技园区网 广东兽药饲料贸易网等多家农业网站上应用 取 得了一定的社会和经济效益 2 1 3 研究内容与方法 本次研究考虑到最终预测方法在系统上的实现 对预测方法进行研究 如回归分析 法中的多元回归分析发 前移回归分析法 时间序列法中的单指数平滑 双指数平滑 自回归移动平均法 季节自回归移动平均法 在经过大量实验分析后 比较得出一个最 优的方案 该方案将在 Web 预测服务系统中实现 在系统的实现上 使用 JSP Java Server Pages 技术与 Struts 框架技术 JSP 是由 Sun 公司倡导 与多个公司共同建立的一种技术标准 它建立在 Servlet 之上 考虑到系 统规模较小 所以只使用目前流行的开源框架 Struts Struts 是个典型的 MVC Model View Controller 结构实现框架 使用该框架对 Web 系统以后的维护 与升级打好基础 2 预测方法相关原理与研究分析 2 1 数据获取与预处理 数据处理就是对每月农产品交易行情价格及其相关信息的资料进行处理的问题 数据的获取来自 中国蔬菜网 选取广州市白云山农产品综合批发市场每日小白菜交 易价格的作为为实验数据对象 数据时间跨度从2008年1月起到2010年2月 2 2 时间序列分析法 时间序列是指按时间顺序排列的预测数据集 在预测时 依据表示事物状态的主要 变量的历史数据 用统计学方法或系统辨识的方法建立起描述事物迄今为止的变化规律 的数学模型 并以此来推测未来 时向序列预测模型还可分传统时间序列预测模型与现 代时间序列预测模型 3 4 传统时间序列预测模型有移动平均 指数平滑模型等 现代时间序列预测模型则包 括 ARIMA Autoregressive Integrated Moving Average Model 自回归移动平均模型 ARCH Autoregressive conditional heteroskedasticity model 自回归条件异方差模型 GARCH Generalized ARCH 广义 ARCH 等 4 2 3 指数平滑法 2 3 1 指数平滑模型的发展 指数平滑模型是由加拿大人 C C 霍尔特于 1957 年在未公开发表的报告中首次提出 的 它在报告中详细的阐述了单指数平滑模型 美国人布朗在 1962 年的著作中详细论 述了这种方法 并提出了布朗高次指数平滑模型 并将之应用于对非线形模型的预测分 析 之后 美国人姆斯在 1965 年首先提出指数平滑能够产生最优预报的时间序列模型 接着 在 70 年代末期 出现了温特线性和季节性指数平滑模型 使得指数平滑模型可 以将数据的季节性 趋势性因素也纳入考虑范围 5 以上这些基于时间序列的指数平滑模型的区别在于它们是否使用多个指数 是否是 趋势的或者季节性改变 1985 年 美国人加德纳发表了一篇专门论述指数平滑法的文章 直到今天这篇文章还起着非常重要的作用 之后的十几年 已经比较健全的指数平滑模 型被推广到了需要预测科学的各个领域 发挥了非常大的作用 但是随着应用的普及 人们逐渐发现它有以下三个问题很难解决 5 l 平滑初值要确定一个平滑初值 2 静态平滑参数静态参数很难适应时间序列自身变化 3 平滑参数 Alpha 值不确定 它一般都是凭借经验或多次试验得到的 这样确 定的值很难达到最佳值 2 3 2 指数平滑法的优点 指数平滑模型具有其它一些算法和模型所不能达到的优势 因而使对指数平滑的研 究引起了人们广泛的重视 并且在实际生活中获得了非常普遍的应用 指数平滑法有如 下几个优点 5 1 操作指数平滑法操作简易 成本低廉 公式简单明了 输入数据简单 在普 通的计算机上即可完成操作 2 使用范围和性能适应性强 指数平滑法可以说适用于几乎所有的以时间序列 为基础的预测中 并不仅仅在经济预测上 还可以用于自然科学 军事等各个方面 3 数据处理的方法利用全部历史数据和相关信息 遵循 厚近薄远 的规则加 权 修匀数据 使得数据模型具有抵御和减弱异常数据影响的功能 并使时间序列包含 的历史规律显著的体现出来 这是指数平滑最显著的特点 4 数据的需求和处理量可以节省很多数据和数据处理时间 指数平滑预测只要 有上期实际数据和预测值就可以计算下期的预测值 2 3 3 单指数平滑法对小白菜价格的预测 本文使用的数据是2008年1月份至2009年12月份 广州白云山农产品综合批发市场 小白菜的批发价格 共计120条记录 每个月份5个记录 画出这两年的小白菜价格折线 图 如图1所示 2008 2009年小白菜价格 0 1 2 3 4 5 11325374961738597 109 元 kg 价格曲线 图1 2008年至2009年小白菜价格 横坐标自左向右表示日期序列 从2008年1月1日起 序列每递增5 表示时间向后 推移一个月份 纵坐标表示小白菜批发价格 单位为元 kg 从大体上观察 可以发现 08年价格波动比较剧烈 横坐标为34的位置 也就是2008年的7月份 达到这两年小白 菜价格的最高点 2009年小白菜价格趋势分析图 0 0 5 1 1 5 2 2 5 3 3 5 4 17 13 19 25 31 37 43 49 55 元 kg 08年价格曲线 趋势曲线 图2 小白菜预测分析图 由于我们主要关心农产品价格现状 对2009年的记录进行趋势分析 使用Minitab软 件的 趋势分析 功能 得趋势方程 Yt 1 025 0 0380 t 0 000277 t2 如图2所示 红色线为2009年 趋势曲线 不难看出 2009年的小白菜价格在波 动中有上升的趋势 现在使用单指数平滑法对价格进行预测 5 6 首先用软件SPSS对数据进行分析 Alpha值从0开始 步长0 01 得出的平均方差最小的最优Alpha值为0 95 同样可以使用 Minitab软件的单指数平滑功能来分析 得到的Alpha值为0 95167 保存统计分析后得到 的拟合数据 用Excel画图折线图 如图2 3 是2009年小白菜实际价格与预测价格的单指 数平滑拟合图 蓝色曲线是实际价格 红色曲线是预测价格 黄色曲线是方差 可以看 出预测结果与实际价格比较吻合 用单指数平滑法对小白菜价格的预测有一定的可行性 单指数平滑拟合图 1 5 1 0 5 0 0 5 1 1 5 2 2 5 3 3 5 4 16 11 16 21 26 31 36 41 46 51 56 元 kg 实际价格 预测价格 方差 图3 单指数平滑拟合图 以上步骤还只是预测结果与历史数据拟合 还不能做到真正的预测 现在使用指数 平滑法对未来一个月的小白菜价格进行预测 使用Minilab软件单指数平滑统计功能 向 后预测5个时间点的价格 对应2010年1月5个记录点小白菜价格 Alpha值为0 95 分 析预测结果如图4 青色线 预测价格上限 和黄色线 预测价格下限 所包含的区间 是95 致信度下 小白菜可能出现的价格 红色线 预测价格 为未来一个月份小白菜 预测价格 这段时间预测结果都为2 58元 kg 基本上和未来的实际价格没有大的偏差 单指数平滑法预测 0 0 5 1 1 5 2 2 5 3 3 5 4 16 11 16 21 26 31 36 41 46 51 56 61 元 kg 实际价格 预测价格 预测价格下限 预测价格上限 图4 单指数平滑法预测 2 3 4 双指数平滑法对小白菜价格的预测 使用Minilab对数据进行分析 关于Alpha和Gamma的取值 选 最优综合 的分析 的方法 其中Alpha表示水平上的影响 Gamma代表趋势 分析得出的平均方差最小的 最优Alpha值为1 04 Gamma值为0 03 图5是2009年小白菜实际价格与预测价格的双指 数平滑拟合图 可以看出预测结果与实际价格比较吻合 双指数平滑拟合图 1 5 1 0 5 0 0 5 1 1 5 2 2 5 3 3 5 4 16 11 16 21 26 31 36 41 46 51 56 元 kg 实际价格 预测价格 方差 图5 双指数平滑法拟合图 现在使用双数平滑法对小白菜价格进行预测 3 7 首先用Minilab软件单指数平滑统 计功能 向后预测5个时间点的价格 对应2010年1月5个记录点小白菜价格 Alpha值 为1 04 Gamma值为0 03 分析预测结果如图6所示 双指数平滑法预测 1 0 1 2 3 4 5 6 159 13 17 21 25 29 33 37 41 45 49 53 57 61 65 元 kg 实际价格 预测价格 预测价格下限 预测价格上限 图6 双指数平滑法预测 青色线 预测价格上限 和黄色线 预测价格下限 所包含的区间是95 致信度下 小白菜可能出现的价格 红色线 预测价格 为未来一个月份小白菜预测价格 预测结 果中表现出未来价格有上升的趋势 并且基本上和未来的实际价格没有大的偏差 双指 数平滑预测比单指数平滑预测效果稍好 2 4 ARIMA 模型 博克斯与詹金斯所著的 时间序列分析 预测与控制 提出了新一代的预测方法 ARIMA 这种被称为博克斯 詹金斯 Box Jenkins 方法论的预测方法 在 让数 据自己说话 的哲理的指引下 着重于分析经济时间序列本身的概率或随机性质 而不 在意于构造单一方程抑或联立方程模型 8 14 ARIMA方法利用单个时间序列所表现出的 规律性建立模型加以模拟 并且进行预测 对于短期预测精度比较高 但是长期预测期 则偏差较大 因此多用于对时间序列数据进行1 3期的外推预测 ARIMA是指将非平稳时间序列转化为平稳时间序列 然后将因变量仅对它的滞后 值以及随机误差项的现值进行回归所建立的模型 包括移动平均过程 MA 自回归 过程 AR 自回归移动平均过程 ARMA 以及ARIMA过程 3 2 4 1 建模基本程序 ARIMA 模型预测的基本程序如下 8 9 1 根据时间序列的散点图 自相关函数和偏自相关函数图以 ADF 单位根检验其 方差 趋势及其季节性变化规律 对序列的平稳性进行识别 2 对非平稳序列进行平稳化处理 如果数据序列是非平稳的 并存在一定的增 长或下降趋势 则需要对数据进行差分处理 如果数据存在异方差 则需对数据进行技 术处理 直到处理后的数据的自相关函数值和偏相关函数值无显著地异于零 3 根据时间序列模型的识别规则 建立相应的模型 若平稳序列的偏相关函数 是截尾的 而自相关函数是拖尾的 可断定序列适合 AR 模型 若平稳序列的偏相关函 数是拖尾的 而自相关函数是截尾的 则可断定序列适合 MA 模型 若平稳序列的偏相 关函数和自相关函数均是拖尾的 则序列适合 ARIMA 模型 4 进行参数估计 检验是否具有统计意义 5 进行假设检验 诊断残差序列是否为白噪声 3 6 利用已通过检验的模型进行预测分析 图7 ARIMA模型预测程序 2 4 2 模型识别与估计 根据数据求 2009 年白菜价格的自相关函数 ACF 如图 8 在红色虚线以内的值 基本上可以视为接近于零 可以看出 滞后数 2 以后 ACF 几乎都可以视为零 ARIMA p d q 模型中的 q 可以暂时定为 2 5550454035302520151051 1 0 0 8 0 6 0 4 0 2 0 0 0 2 0 4 0 6 0 8 1 0 滞滞后后 自自相相关关 0 09 9年年白白菜菜价价格格自自相相关关函函数数 图 8 09 年白菜价格自相关函数 计算 2009 年白菜价格的偏相关函数 PACF 如图 9 在红色虚线以内的值 基 本上可以视为接近于零 在滞后为 5 和为 28 时候 PACF 不在红色虚线以内 可以判断 09 年白菜价格数据序列不是平稳的序列 需要对原数据序列进行一阶差分后在求新的自 相关函数和偏相关函数 5550454035302520151051 1 0 0 8 0 6 0 4 0 2 0 0 0 2 0 4 0 6 0 8 1 0 滞滞后后 偏偏自自相相关关 0 09 9年年白白菜菜价价格格偏偏相相关关函函数数 图 9 09 年白菜价格偏相关函数 一阶差分后的自相关函数和偏相关函数如图 10 和图 11 所示 对于 ACF 在滞后 数为 4 以后 ACF 都在红色虚线以内 这些 ACF 可以视为零 对于 PACF 在滞后数为 4 以后 PACF 同样都可以视为零 经过分析 ARIMA 模型初步确定为 4 1 4 5550454035302520151051 1 0 0 8 0 6 0 4 0 2 0 0 0 2 0 4 0 6 0 8 1 0 滞滞后后 自自相相关关 一一阶阶差差分分后后自自相相关关函函数数 图 10 一阶差分后自相关函数 5550454035302520151051 1 0 0 8 0 6 0 4 0 2 0 0 0 2 0 4 0 6 0 8 1 0 滞滞后后 偏偏自自相相关关 一一阶阶差差分分后后偏偏相相关关函函数数 图 11 一阶差分后偏相关函数 2 4 3 ARIMA 模型的诊断 在识别 ARIMA 模型并将其拟合后 必须对所有拟合的模型进行诊断 才能真正用 于预测 对残差的分析和 T 检验 是两个比较有效的诊断方法 对模型进行残差分析 图 12 是根据 ARIMA 4 1 4 模型拟合得到的残差生成 直方图 当残差近似地服从均值为零的正态分布时 模型可信度较高 如图所示 该模 型拟合的残差近似显均值为零的正态分布 说明模型 4 1 4 可信度较高 对模型进行 T 检验 表 1 为 Minilab 分析工具拟合模型时生成的参数估计值 观测 P 值 这次模型拟合选择的显著水平 Alpha 为 0 05 当 P 值大于 0 05 时 那么我们没有 理由拒绝原假设 如表 1 所示 AR 2 AR 3 AR 4 MR 1 MR 2 MR 4 时 P 值均大于 0 05 模型 ARIMA 4 1 4 可信度较高 残差直方图 0 2 4 6 8 10 12 14 16 0 775164015 0 552349975 0 329535936 0 106721896 0 116092143 0 338906183 0 561720222 其他 接收 频率 频率 图 12 残差直方图 表 1 模型 T 检验 类型系数系数标准误TP AR 1 0 6755 0 2937 2 30 0 026 AR 2 0 0751 0 2716 0 280 783 AR 3 0 1723 0 2534 0 680 500 AR 4 0 0372 0 2732 0 140 892 MA 1 0 5074 0 2636 1 920 060 MA 2 0 1570 0 22830 690 495 MA 3 0 7071 0 24282 910 005 MA 4 0 5943 0 30701 940 059 常量 0 03776 0 011403 310 002 2 4 4 模型预测 使用 ARIMA 4 1 4 模型对未来进行预测 预测点数为 10 对应实际时间 2 个月份 预测结果如下 青色线 预测价格上限 和黄色线 预测价格下限 所包含 的区间是 95 致信度下 小白菜可能出现的价格 红色线 预测价格 为未来 2 个月份 小白菜预测价格 在预测点数 10 以内 能过正确地预测出未来这段时间价格下降的趋 势 但在预测点 10 以后 不能正确预测出价格上涨的趋势 该预测模型未达到预先期 望的效果 需要进一步改进 ARIMA模型预测 0 0 5 1 1 5 2 2 5 3 3 5 4 17 13 19 25 31 37 43 49 55 61 67 元 kg 实际价格 预测价格 预测价格下限 预测价格上限 图 13 ARIMA 模型预测 2 4 5 模型优化 根据 2 4 2 节的分析结果 2009 年小白菜价格数据序列为非稳定序列 对其一阶差 分得到平稳序列 考虑到季节周期对农产品价格的影响 对季节因素的考虑可以优化原 先 ARIMA 4 1 4 的模型假设 5550454035302520151051 1 0 0 8 0 6 0 4 0 2 0 0 0 2 0 4 0 6 0 8 1 0 滞滞后后 自自相相关关 一一阶阶差差分分后后自自相相关关函函数数 图 14 一阶差分后偏相关函数 观察一阶差分后的 ACF 图 如图 14 在滞后数为 4 19 34 处 出现该点 ACF 值 相对左右一定数目时滞 ACF 处于一个谷值 这表明 ACF 受到周期为 15 的季节影响 周期 15 刚好与实际时间上的 3 个月吻合 对季节进行一阶差分 能使得数据序列更平 稳 初步建立模型 ARIMA 4 1 4 0 1 1 15 模型中的 15 表示季节周期 对模型进行残差分析 图 15 是根据 ARIMA 4 1 3 0 1 1 15模型拟合得 到的残差直方图 残差近似服从均值为零的正态分布时 模型可信度较高 如图所示 该模型拟合的残差近似显均值为零的正态分布 说明该季节 ARIMA 模型可信度较高 残差直方图 0 2 4 6 8 10 12 14 16 0 699629565 0 415168484 0 130707404 0 153753676 0 438214757 0 722675837 其他 接收 频率 频率 图 15 残差直方图 表 2 季节 ARIMA T 检验 类型系数系数标准误TP AR 1 0 0564 0 3788 0 150 882 AR 2 0 0722 0 3228 0 220 824 AR 3 0 0668 0 28570 230 816 AR 4 0 2194 0 2643 0 830 412 MA 1 0 1795 0 36870 490 629 MA 2 0 0381 0 3235 0 120 907 MA 3 0 6683 0 26262 540 016 SMA 15 0 6492 0 24032 700 011 常量 0 011940 0 008326 1 430 160 对模型进行 T 检验 表 2 为 Minilab 分析工具拟合模型时生成的参数估计值 观测 P 值 这次模型拟合选择的显著水平 Alpha 为 0 05 当 P 值大于 0 05 时 那么我们没有 理由拒绝原假设 如表 2 2 所示 AR 1 AR 2 AR 3 AR 4 MR 1 MR 2 MR 3 时 P 值均大于 0 05 同时 季 节周期 SMA 15 时 P 值也大于 0 05 所以季节模型 ARIMA 4 1 3 0 1 1 15 可信度较高 使用 ARIMA 4 1 3 0 1 1 15模型对未来进行预测 预测点数为 10 对 应实际时间 2 个月份 预测结果如图 16 所示 青色线 预测价格上限 和黄色线 预测价格下限 所包含的区间是 95 致信度下 小白菜可能出现的价格 红色线 预 测价格 为未来 2 个月份小白菜预测价格 观测预测结果发现吻合程度较高 2010 年 1 月份和 2 月份的小白菜实际价格 先是一小段时间价格上升 然后持续下降 在时间点 66 出到最低谷时再持续上升到 12 月份价格的水平 预测模型预测的结果也正好反映出 这些价格波动趋势 该预测模型可以较精确的预测出未来 2 个月份的小白菜价格 季节ARIMA模型预测 0 0 5 1 1 5 2 2 5 3 3 5 4 4 5 17 13 19 25 31 37 43 49 55 61 67 元 kg 实际价格 预测价格 预测价格下限 预测价格上限 图 16 季节 ARIMA 模型预测 2 5 预测方法性能比较与分析 用指数平滑法来进行预测 操作起来比较简单 现在通过计算机来辅助分析数据 用类似与穷举法的方法找出 Alpha 值个 Gamma 值的最优解 代替了传统靠经验来定值 的方法 大大的提高了数据统计分析的效率 指数平滑法在短期预测上能得到较好的预测结果 因为它遵循 重近轻远 能使 时间序列所包含的历史规律性能显著地体现出来 但在长期预测方面存在较大的缺陷 它是将以往取值的加权平均数作为下一期预测值 显然 当事物发展趋势长期递增 那 么将过去的数据进行加权平均作为下一期预测值必然偏低 如在 2 3 4 节用双指数平滑 法对小白菜价格进行预测 在前期小白菜是个增长的趋势 预测值也能成功反映这种趋 势 但相对实际值偏低 ARIMA 模型进行预测 效果比指数平滑法好很多 但操作起来较为复杂 在 2 4 3 节中用非季节的 ARIMA 模型建模 所得到的模型能够很好的预测未来农产品价格的趋 势 但随着预测点向后推移后 这种趋势似乎没有消除 持续增长或下降 它没能够反 映出价格波动的趋势 这是非季节 ARIMA 模型的缺陷 季节 ARIMA 能够很好地反映出价格的波动 如在 2 4 4 节季节 ARIMA 模型建模中 预测结果很好的地拟合了实际价格整个波动过程 从价格持续增长一段时间 再持续下 降 但季节 ARIMA 又有一个的缺点 它依赖于一个周期 如果历史数据波动比较随机 的话 模型无法的到一个确切的季节周期 例如利用 2008 年至 2009 年的小白菜价格建 季节 ARIMA 模型 由于 2008 年小白菜价格波动剧烈 使这两年的价格波动没有个明 显的周期 从而得不到一个优秀的季节 ARIMA 模型 通过以上分析比较 指数平滑法虽然在短期预测上有优势 但不能满足 Web 系统 的预测服务的需求 ARIMA 模型建模随较为复杂 但可以得到较好的预测结果 并满 足需求 所以 未来的 Web 预测系统中采用的预测方法主要是季节 ARIMA 为主 非季 节 ARIMA 为辅 由于季节 ARIMA 有时得不到较优的预测模型 这时可以用非季节 ARIMA 模型来代替 弥补季节 ARIMA 不足之处 3 系统支持技术 3 1 B S 结构 本次系统开发将使用 B S 结构 B S 结构的优点 1 具有分布性特点 可以随时随地进行查询 浏览等业务处理 用户不需要 安装专门的客户端 只需一个普通的Web 浏览器既可以 2 业务扩展简单方便 通过增加 相应网页即可增加服务器功能 兼容性好 使用不同的开发工具 也能很好的为系统扩展新的业务和功能模块 3 维护简单方便 只需要在服务器端修改相应的部分 而客户端不用任何操 作 即可实现所有用户的同步更新 4 开发简单 成本较低 共享性强 3 2 JSP 技术 Java Server Pages 简称 JSP 15 是由 Sun 公司倡导 与多个公司共同建立的一种技 术标准 它建立在 Servlet 之上 应用 JSP 程序员或非程序员可以高效率地创建 Web 应用程序 并使用得开发的 Web 应用程序具有安全性高 跨平台等优点 JSP 是运行在服务器端的脚本语言之一 与其他的服务器端脚本语言一样 是用来 开发动态网页的一种技术 JSP 页面由传统的 HTML 代码和嵌入的 Java 代码组成 当 用户请求一个 JSP 页面时 服务器会执行这些 Java 代码 然后将结果与页面的静态部 分相结合返回给客户端浏览器 JSP 是在 Servlet 的基础上开发的技术 它继承了 Java Servlet 的各项优秀功能 而 Java Servlet 是作为 Java 的一种解决方案 在制作网页的过程中 他继承了 Java 的所有 特性 因此 JSP 同样继承了 Java 技术简单 便利 面向对象 跨平台和安全可靠的优 点 比起其他服务器脚本语言 JSP 更加简单 迅速 和有力 JSP 技术优势如下 1 一次编写 到处运行 在这一点上 Java 比 PHP 更出色 除了系统之外 代码 不用做任何更改 2 系统的多平台支持 基本上可以在所有平台上的任意环境中开发 在任意环 境中进行系统部署 在任意环境中扩展 相比 ASP PHP 的局限性是显而易见的 3 强大的可伸缩性 从只有一个小的 Jar 文件就可以运行 Servlet JSP 到由多台 服务器进行集群和负载均衡 到多台 Application 进行事务处理 消息处理 一台服务器 到无数台服务器 Java 显示了一个巨大的生命力 4 多样化和功能强大的开发工具支持 这一点与 ASP 很像 Java 已经有了许多 非常优秀的开发工具 而且许多可以免费得到 并且其中许多已经可以顺利的运行于多 种平台之下 3 3 框架技术 框架是一个描述性的构建块和服务集合 开发人员可以用来达成某个目标 如开发 整个应用 构建部分应用 测试应用等等 一般来说 框架提供了解决某类问题的基础 设施 是用来创建方案的工具 而不是问题的解决方案 16 为了针对问题设计解决方案 框架的深入程度有所不同 有些框架致力提供不同的 方式来构建解决方案 有些提供通用的基础设施 将很多决策留给开发人员来完成 在提供这种结构是 框架一般会在其体系结果中使用成熟的模式 例如 当前很多 Web 应用框架中就使用了 MVC 模式 大多数基于 MVC 的 Web 框架都有控制器组件的 一个集中表示 有时这个控制器是可以配置 这样请求就能作为控制器多能执行的不同 动作的一部分传递给其他类 这些与应用的集成都意味这开发人员可以将更多时间放在 解决业务问题上 3 4 Struts 框架中的 MVC 模式 MVC 在 Struts 框架中的实现如下 16 1 Model 部分 由 ActionForm 和 JavaBean 组成 其中 ActionForm 用于封装用户的请求参数 封装 成 ActionForm 对象 该对象被 ActionServlet 转发给 Action Action 根据 ActionFrom 里 面的请求参数处理用户的请求 JavaBean 则封装了底层的业务逻辑 包括数据库访问等 2 View 部分 该部分采用 JSP 实现 Struts 提供了丰富的标签库 通过标签库可以减少脚本的使 用 自定义的标签库可以实现与 Model 的有效交互 并增加了现实功能 3 Controller 组件 Controller 组件有两个部分组成 系统核心控制器 业务逻辑控制器 系统核心 控制器 该控制器由 Struts 框架提供 继承 HttpServlet 类 因此可以配置成标注的 Servlet 该控制器负责拦截所有的 HTTP 请求 然后根据用户请求决定是否要转给 业务逻辑控制器 业务逻辑控制器 负责处理用户请求 业务逻辑控制器 本身不具 备处理能力 而是调用 Model 来完成处理 图 17 struts 工作流程 Struts 工作流程如图 5 1 显示 首先客户端浏览器向服务器发出请求 这个请求 被 Struts 前台的控制器 Controller 接收 也就是图中所示的 servlet servlet 读取配 置文件 struts config xml 根据所配置的信息 将请求分发到相应的ActionServlet 类 该类是 struts 提供的 并且是框架中 Controller 组件的基础 Action 类在处理 请求时 调用到相应的业务逻辑 Model 以完成客户所希望达成的请求操作 Action 完成处理以后返回一个显示页面 该显示页面被Servlet 解析 通过配置文件 解析 服务器端返回一个 JSP 页面到客户端浏览器 4 系统需求分析 系统角色类型存在 3 种 游客 注册用户 第三方软件注册用户 系统管理员 游客权限较低 基本上不能使用系统一些功能 游客通过注册 根据系统提供的认 证规则 填写合法的注册信息 注册成为正式用户 注册用户能够使用系统前台的提供的所有功能 包括对往年的行情信息的查询 查 询功能必须提供一些筛选条件 方便用户快速准确的查询到所需的信息 如按年月进行 搜索 按农产品的品种来搜索 系统必须提供一个最主要的功能 既是农产品价格预测 功能 在该功能模块 用户可以挑选所需要进行预测的农产品 对未来的预测 系统需 返回预测结果 最好返回图表 为用户比较直观显示未来农产品价格的走势 在系统达 成这些基本功能时 系统同时可以提供让用户修改自己用户密码或其他信息的功能 以 确保用户使用系统的安全性 第三方软件注册用户应当能使用上系统前台的一些基本功能 与普通注册用户有着 同样的权限 系统应当提供给后台给管理员使用 管理员理应可以查询农产品价格行情 同时管 理员可以查看用户的一些信息 管理员所需最为主要的功能是更新农产品价格信息 管 理员可以插入新的价格信息或者修改以往输入的有误数据 系统必须提为管理员提供较 为友好的服务 让管理方便添加信息和还修改以往数据 管理员可以修改自己的管理员 密码 该类管理员权限较为低 不能对数据库数据等有太强的操作 如随意删除用户 以确保系统安全性 根据用户角色类型和角色需要使用那些功能 使用软件 Rational Rose 2003 画如图 18 的 用例图 图 18 需求分析用例图 5 系统设计 5 1 系统总体结构设计 图 19 是系统层次图 顶层是农产品价格预测系统 第二层主要分为三个功能模块 在用户模块 有行情查询 显示系统预测结果 查看与修改个人信息功能 管理员模块 提供管理员查看用户信息 添加新的价格信息 修改个人信息的功能 第三方软件接口 为第三方软件开发商等提供一个接口 通过该接口访问农产品价格预测系统 图 19 系统层次图 5 2 系统服务设计 5 2 1 农产品价格预测服务设计 该农产品价格预测系统采用的主要预测模型是 ARIMA 模型 自回归移动平均法 ARIMA 在建模方面比较复杂 通过系统直接分析得出最优模型或较为优的模型显然是 不可行的 因为随着时间的推移 所使用的 ARIMA 模型会不断的改变 一个固定的模 型是不能满足准确预测农产品价格的 而这些分析过程的数学算法的实现也非常困难 系统的价格预测是通过读取存储在数据的数据的实现 这些数据需要价格预测的分 析员预先使用预测方法得到预测结果 定期更新到数据库 这样做的优点是降低了系统 开发的难度和成本 同时系统去掉一个分析过程 以保证系统运行时的性能 并且保证 所使用的预测模型能够准确的预测出未来农产品价格走势 为用户提供优质的服务 当 然缺点是需要定期更新 由于已经有一套 ARIMA 建模方法 能够快速的得出预测结果 在这方面付出的成本较低 农产品价格预测服务核心是返回包含预测价格曲线的折线图和包含某特定日期实际 价格与预测价格的表格 该服务接口实现后将有如下方法 1 获取预测图 本方法需要用户提供的参数是农产品名 预测方法 预测日期 这两个参数将在数据库查询 返回预测价格数据中起关键作用 方法返回类型是 JFreeChart 类 一个图表类 2 设置预测折线图表头 本方法需要提供参数是上标题 左标题 下标题 以 动态显示图表 既可以动态修改折线图对象表头 3 预测图添加曲线 此方法为折线图对象动态添加曲线 以满足对象动态修改 4 获取特定时间段实际价格与预测价格 需提供的参数是农产品名 预测方法 预测日期 5 获取特定日期实际价格与预测价格 用户需要提供的参数是农产品名 预测 方法 预测日期 5 2 2 第三方软件接口服务设计 该农产品价格预测系统将提供接口给第三方软件访问 尽量让第三方软件用户享受 普通网络用户得到的服务 接口设计实现后 将有如下方法 1 验证方法 用户输入用户名和密码作为参数 提交到服务器 认证通过后服 务器将成功建立一个会话 用户就能有权利享受其他服务 2 价格查询方法 用户输入年份 月份 产品名为参数 该方法使用相应的数 据库访问类 返回 List类 方法将用重载的方式来编写 以方便第三方软件开 发者灵活使用该方法 3 价格预测方法 用户输入日期做为参数 方法返回 List类 该返回类 保存的数据有一定规范 第三方软件开发者可以根据实际情况编写程序显示相应的报表 5 3 数据库设计 本系统数据库的表较为简单 下面是几个基本的数据库表 1 用户表 表 3 用户表 字段名类型长度备注 用户 IDLong8主键 用户名Char20Nonull 密码Char20Nonull 电子邮箱Char20Nonull 联系电话Char20 2 行情表 表 4 行情表 字段名类型长度备注 行情 IDLong8主键 产品名Char20Nonull 日期Datetime8Nonull 最低价格Float8 最高价格Float8 平均价格Float8 计量单位Char10 3 预测表 表 5 预测表 字段名类型长度备注 预测 IDLong8主键 年份Int4Nonull 序列号Int4Nonul 产品名Char20Nonull 实际价格Float8 预测价格Float8 5 4 系统详细设计 5 4 1 用户 管理员与系统交互 用户 管理员与系统交互的类图如图 20 客户端的请求通过 Servlet 前端控制器 将请求发送到 Action 类 LoginAction 是登录时的服务器响应客户端请求使用的自定义 类 RegisterAction 对应用户注册请求 ForecastAction 对应用户预测查询请求 QueryAction 对应用户查询行情信息请求 ModifyAction 对应管理员修改行情信息请求 AddAction 对应管理员添加行情信息请求 这六个类继承了 Action 类 并重载它的 execute 方法 execute 方法是 Action 类事例化后必须调用的方法 根据处理不同业务逻 辑的需求 子类在 execute 内填入相应的代码 图 20 用户 管理员与系统交互类图 Action 类依赖 DynaActionForm 类和 DataBaseAccess 类 既 Action 类用到这两个类 DynaActionForm 类是用来保存用户提交表单信息的类 DataBaseAccess 类是用来连接和访问 SQL 数据库的类 该类有默认配置方法设置 默认数据库连接访问参数 有验证 查询 修改等相应数据库操作的方法 验证 查询 和修改方法的参数是 String 类型的 SQL 查询语句 5 4 2 农产品价格预测服务详细设计 1 农产品价格预测服务类图 如图 21 所示 农产品价格预测服务用到图中几个类 其中 ChartFactory JFreeChart XYSeriesCollection XYSeries Action 由 Java 开源项目提供 图中的 ForecastAction LineChartFactory 和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年低压电工作业规范与安全知识测试题库及解析
- 2025年乡镇卫健办招聘面试模拟题计生协管员岗位专业知识问答
- 2025年中小学编制语文教师招聘面试之高频考点梳理与应对策略
- 2025年国际贸易实务操作手册及模拟题解析
- 2025年新型高性能低合金钢、合金钢材料合作协议书
- 2025年压纸轮合作协议书
- 2025年家电制造设备项目建议书
- 护士防护病毒知识培训课件
- 2025年医用气体终端项目合作计划书
- 抢救管理相关知识课件
- 小学科学新教科版三年级上册全册教案(2025秋新版)
- 适龄儿童免(缓)学申请表
- DB33- 1015-2021《居住建筑节能设计标准》
- 小学综合实践一年级上册各单元教材分析及全一册全部教案
- 二年级上册生命.生态.安全 全册教案
- (完整版)英语能力B级考试课件
- (中英)订购单-Purchase-Order
- 框架结构(课件)
- 家具采购项目评分表
- 有机化学第五章 脂环烃
- 铁路货物装载加固规则
评论
0/150
提交评论