数据挖掘服务在物流配送规划中的应用
2011-09-08祖巧红曹萌萌
祖巧红,郭 芳,曹萌萌
(武汉理工大学物流工程学院,湖北武汉 430063)
数据挖掘是应用一系列技术从大型数据库或数据仓库的数据中抽取出潜在的、不为人知的有用信息、模式和趋势,并能够挖掘出可理解模式的高级处理过程,是统计学、数据库技术和人工智能技术的综合[1]。
SOA是一个组件模型,它将应用程序的不同功能单元(即服务)通过服务之间定义良好的接口与契约联系起来,使得构建在各种系统中的服务以一种统一和通用的方式进行交互。SOA结构中共有3种角色:服务提供者发布自己的服务;服务代理注册已经发布的服务提供者;服务请求者利用服务代理查找所需的服务,然后使用该服务[2]。
笔者旨在将目前企业急需的数据挖掘功能以服务的方式架构和发布,使得物流企业在配送系统应用中能快速集成数据挖掘功能,更好地实现企业信息系统的敏捷构建,使数据挖掘技术能简单有效地在基于SOA的配送系统中得以快速运用,并最终通过服务来实施数据挖掘技术,以节省物流成本[3]。
1 需求分析
物流配送运输管理环节中的数据挖掘应用需求包括:
(1)获取系统中的历史数据,利用数据挖掘对数据进行导入、导出、计算和分析。
(2)利用数据挖掘服务来实现对部分物流配送问题的智能分析,找到合理的配送运输路线。
结合 WebGIS[4]技术,对其进行二次开发,利用面向SOA的数据挖掘服务实现动态标注、标注管理、标注查询,以及路径规划功能。
2 基于SOA的数据挖掘服务
2.1 数据上传服务
通过分析数据挖掘技术在物流配送管理中的应用需求,以WCF为开发框架,在现代物流管理平台中设计基于SOA的数据挖掘服务,包括数据上传服务、数据清洗服务、数据挖掘算法服务和OLAP服务等。
在Web环境下[5]实现大文件的上传,需要在设计数据上传服务的过程中考虑两个问题:一是把相关数据序列化生成字节流进行压缩,再进行传输,如果要访问该文件,做反向操作即可;二是针对压缩后数据仍然较大的文件,再压缩流,然后对流进行拆分[6]。
大文件上传服务契约设计主要涉及服务端和客户端。在服务端进行的操作主要有生成数据集、将数据集序列化生成字节流和压缩字节流等;在客户端进行的操作主要有获取压缩字节流、解压字节流、反序列化和生成数据集等。
2.2 数据清洗服务
数据清洗服务的操作过程是:浏览并选择一个后缀名为csv的平面文件,指定该文件中用于分隔字段的分隔符,以及对字符串加入的限定符,同时设置数据库服务器、数据库名等信息。程序建立连接后,生成数据流任务,最终通过执行生成的包将数据上传到目标数据库中并作简单清洗。
2.3 数据挖掘算法服务
通过读取商业元数据信息,选用合适的数据挖掘算法来动态生成数据挖掘结构和挖掘模型的建立语句、模型训练语句和预测语句,同时结合数据挖掘算法的可视化组件,将挖掘结果显示到客户端。图1为数据挖掘算法例图。
图1 序列聚类算法服务例图
2.4 OLAP服务
OLAP服务中的关键技术有两个:数据挖掘API、可视化技术[7]。
在OLAP服务的设计和实现中,必须通过数据挖掘API来访问立方体及数据挖掘模型。其中,通过 MDX查询立方体的操作可以利用ADOMD.NET来实现。ADOMD.NET是 SQL SERVER 2005中提供给用户的组件,用于通过编码的方式来访问Analysis Services服务,从而操作数据仓库对象以及实现相关OLAP操作,如上钻、下取、切片和分类等。图2为OLAP下取分析及可视化图例。
图2 OLAP下取分析及可视化例图
3 应用实例
3.1 面向SOA的WebGIS二次开发
近年来,基于网络地图的位置服务得到越来越普遍的应用,API作为通用的网络编程接口在WebGIS中得到广泛应用[8]。MapEasy 是基于JavaScript和Ajax的技术,可提供所需的地图,渲染图像,并实现正常地理信息系统的功能,如定位,缩放和标记。
笔者结合MapEasy显示瓦片图的原理,开发了相应的扩展功能,并将湖北省十堰市的三维地图应用到该系统中。二次开发后的运行界面如图3所示。其中,1为工具栏,2为平移放大工具,3为标注显示,4为比例尺,5为鹰眼图,6为标注查询。二次开发后的WebGIS扩展了MapEasy的工具条,实现了动态标注、标注管理、标注查询,以及路径规划功能,并通过调用数据挖掘服务实现了各路线的在线分析等功能。
图3 二次开发后的WebGIS运行界面
3.2 扩展地图的标注功能
地图标注是指在电子地图上加入标记来显示地物信息的功能。要实现在地图上任意位置添加和显示标注,需要考虑以下技术问题:
(1)将标注信息保存到数据库中。考虑与其他系统的数据接口,将地图上的地物标注的位置信息以地理坐标的方式来存储。通过获取鼠标在屏幕中的位置转换为三维地理坐标F=f(x,y,z)实现新增的坐标位置[9]。
(2)采用Ajax技术显示标注信息。Ajax是一种在网页中异步调用服务器数据的方法,其原理是由客户端在后台发送一个获取服务器数据的请求。当获取服务器数据后,客户端可以有选择性地更新页面元素使页面在不全部刷新的情况下也能更新数据。因图层数过多而导致浏览器在加载过程中响应缓慢,该技术的采用可以避免显示整个地图的所有标注。
3.3 扩展路径规划功能
路径规划是指在地图上为物流企业的车辆安排合适的行车线路。特别是当城市交通网庞大且可选路线方案多样时,该功能就显得十分必要。
路径规划功能中,通过鼠标的单击事件获得当前的屏幕坐标,并将其转化为当前点对应的地理坐标,通过循环即可获得所有单击事件产生的路线,不同路线用不同颜色进行区分。在地图上添加路线的操作界面如图2所示。编辑完成后,通过鼠标双击事件来结束路线编辑,同时弹出录入路线名的对话框将其保存到数据库。
3.4 配送路径分析
在笔者研究的物流配送路径的案例中,假设某城市已有一批客户,这些客户的地理位置坐标已知,供应商定期安排车辆给这些客户配送货物。主要分析过程和实现步骤如下:
(1)上传客户历史销售数据。首先需要将准备好的客户数据上传,而在上传数据之前,需要初始化一个用于客户分析的数据库,并利用元数据管理,定义好数据库结构。在该例中,以上过程可通过调用数据清洗服务和数据上传服务实现。
(2)对客户进行分类。首先,通过了解客户分类的需求,调用元数据管理服务建立客户主题数据(仓)库[10-11],然后调用数据上传服务将客户样本数据上传,接着调用数据清洗服务,对上传后的数据进行清洗、转换和加载。此后,调用适用于客户分类的数据挖掘算法服务建立挖掘模型,并通过调用OLAP服务来显示客户分类的结果。
(3)在地图上显示客户标注。分类完成后,可在地图上将客户标注信息以不同背景颜色来区分。结合所实现的标注功能,根据客户所属类别获得需要显示的标注颜色,如图4所示,在朝阳南路上就有不同类型的客户,其标注的背景色是根据其价值大小按颜色的深浅来分类的。其中,中石油湖北十堰销售分公司、十堰市经济作物研究所、十堰恒捷物贸公司等客户为深黑色,表明这些可能都是大客户。
(4)按照客户类型进行路径安排。在对客户完成分类并在地图上按不同背景颜色显示其标注信息后,可以有针对性地发现一些规律,根据这些规律来规划合理的配送路线。如图4所示,围绕朝阳中路及人民中路附近的客户比较集中,因此可安排“恒捷运意线”这条路线。
4 结论
笔者完成了对WebGIS的构建,结合物流管理平台中的数据挖掘服务,在实现三维地图标注功能的基础上,通过调用数据挖掘服务实现了在城市内部规划物流配送路径的示例,为决策者提供了一种决策依据,并将路线直观显示在三维电子地图上,提高了配送路线规划的可视化程度。
图4 “恒捷运意线”的路径规划
[1]章刚勇,尹继东,龚凌燕.基于SQL的数据挖掘技术在物流企业管理中的应用[J].企业经济,2010(11):45-47.
[2]丁兆青,董传良.基于SOA的分布式应用集成研究[J].计算机工程,2007(10):246-248.
[3]PAN W T,CHEN P W.A study on the logistic service satisfaction for internet marketing enterprise using data mining technology[J].Advanced Institute of Convergence Information Technology,2011(3):114-120.
[4]杨湘燕.基于WebGIS的物流配送路径规划系统的设计与实现[D].厦门:厦门大学图书馆,2009.
[5]韩璐,孙蕾,施惠娟,等.基于SOA的数据挖掘原型平台的设计与实现[J].计算机应用与软件,2011(2):159-162.
[6]杨竣辉,黄婵.基于B/S的数据上传技术的实现[J].计算机时代,2008(6):61-63.
[7]肖冰,廖国凡.数据挖掘及其运用于设计物流配送方案的设想[J].邵阳学院学报:自然科学版,2006(4):32-34.
[8]LI J,SONG B.Web services integration on data mining based on SOA[J].International Symposium on Intelligence Information Processing and Trusted Computing,2010(2):532-534.
[9]NEJAD S K,SEIFI F,AHMADI H,et al.Applying data mining in prediction and classification of urban traffic[J].World Congress on Computer Science and Information Engineering,2009(3):674-678.
[10]谭玉玲.基于正则表达式的数据处理应用[J].武汉理工大学学报:信息与管理工程版,2010,32(2):249-252.
[11]WANG D P,XU X J.Analysis and design of the logistics information system based on data mining[C]//International Conference on Intelligent Computation Technology and Automation.[S.l.]:[s.n.],2010:635-638.