董翔英, 吕亚飞, 邹饶邦彦
(1. 军事交通学院军用车辆系, 天津 300161; 2. 军事交通学院研究生管理大队, 天津 300161)
基于数据挖掘的车辆器材仓库库存结构分析
董翔英1, 吕亚飞2, 邹饶邦彦2
(1. 军事交通学院军用车辆系, 天津 300161; 2. 军事交通学院研究生管理大队, 天津 300161)
针对后方车辆器材仓库库存车型结构、库存器材品种结构和数量结构不合理问题,以车辆器材实际消耗的历史数据为挖掘对象,应用K-均值聚类算法和BP神经网络,建立了基于数据挖掘的定品种、定数量的库存结构分析模型,并利用R语言对所建模型进行了验证,为确定车辆器材的库存品种结构和数量结构提供了理论支撑。
车辆器材仓库; 库存结构; 数据挖掘; R语言
后方车辆器材仓库(简称“仓库”)是实施车辆器材供应保障的基地,对提高车辆装备的保障能力具有重要作用,其基本任务是组织车辆器材的接收、保管和发放等业务以及管理活动。库存结构是指在一定库存中,各器材的品种和数量构成的相互比例关系,主要包括各器材品种、数量所占比例以及单品种数量所占比例。库存结构主要采用库存车型、各车型器材品种和数量3类参数来描述。因此在编制车辆器材周转量计划时,要进行“三定”,即定品种、定数量、定总值,以确保库存结构的合理性,使库存器材结构和车辆维修所需器材的实际消耗相匹配,既满足器材消耗需求,又避免积压浪费,使有限的周转器材发挥最大的军事和保障效益。目前,各仓库的库存结构基本能满足各保障单位对车辆维修器材的需求,能完成车辆维修保障任务,但由于人员岗位轮换性大、器材消耗规律难以掌握等问题,现有的器材库存结构与车辆维修保障的实际需求仍有一定偏差,难以达到现代化后勤的“精确化保障”要求。
国内对库存器材的分类主要采用ABC分类法,如罗雪等[1]利用层次分析法建立了一套包含器材筹备难易程度、关键程度及经济性的评价指标对器材进行ABC分类;郭智敏等[2]基于器材的损耗规律、筹措敏捷度及关键程度将器材归为ABCD四类。ABC分类法具有一定的指导性和实用性,但由于其应用过程中评价指标的建立和关键程度的区分需要采用专家打分法,主观性较强,分类结果存在不确定性。数据挖掘是从数据库中自动发现有用信息和相关模式的过程,即从大量的、有噪声的、不完全的、随机的和模糊的数据中,发现并提取隐含其中的、事先所不知道的、潜在有用信息及知识的过程,数据挖掘的常用算法有预测、聚类和关联等[3]。
目前,主要依经验判断进行器材仓库库存结构调整,主观因素影响大,K-均值聚类和BP神经网络算法通过对历史数据的挖掘分析,可得到更为客观的分类和预测结果[4],为此,笔者运用K-均值聚类算法和BP神经网络建立器材品种分析模型和器材数量预测模型,为确定车辆器材的品种结构、数量结构提供理论依据。
聚类分析是根据数据中所发现的对象及其关系的相关信息,将数据对象分组,使组内对象之间相关,不同组的对象之间不相关。组内对象的相关性越大,组间对象的差别越大,则聚类结果越符合实际。
K-均值聚类是一种基于原型的簇划分的聚类方法,即以欧几里得距离为划分指标,以数据集的平均值为原型,将数据对象划分为指定的k个簇[5]。目标函数为所有簇的数据对象与质心之间的误差平方和小于设定的阈值,即
(1)
其中:o为数据对象;mi为第i个簇Ci的质心。
1.1 器材品种分类模型构建
与地方物流仓库相比,后方车辆器材仓库的出入库不受“市场需求”的影响,出入库完全按照制定的出库计划、入库计划和调拨计划进行,计划性较强[6],因此笔者不考虑器材的备货期、到货情况和同类器材的替换情况等,以出库量、出库频率和价格为参数对各种器材进行聚类分析,具体步骤如下:
1)数据获取。将车辆器材管理信息系统中的出库记录导出,并进行数据预处理,形成数据出库表,每条记录包括器材编码(qc)、出库凭证号(id)、单次收发数和单价。
2)数据分组。应用R语言的ddply函数对数据进行分组整合,计算每种器材的总出库量(count)、出库频率(fre)和单价(price),形成聚类初始表。
3)数据挖掘。应用R语言的kmeans函数进行挖掘分析。
4)结果分析。利用R语言的可视化函数生成聚类结果分布图,分析各类器材的特点。
1.2 实例验证和结果分析
1.2.1 实例验证
以某车辆器材仓库2014年度的出库历史记录(共2383条)为实验数据,借助R语言进行挖掘分析和验证。按车型该数据分为CA1122、EQ2050、EQ2102和EQ2050共4类,表1为EQ2050出库记录表。
表1 EQ2050出库记录
应用ddply函数
count1<-ddply(iq,.(qc), function(x) sum(x$count)) #各种器材总出库量
count2<-ddply(iq,.(qc), summarize, number=length(qc)#各种器材频率
对表1的数据进行分组,得到如表2所示的聚类初始表。
表2 聚类初始表
利用kmeans函数对表2中的数据进行聚类分析,聚类数定为4类,相应的程序代码如下。
library(xlsx) #载入包
workbook<-"C:/zhong.xlsx" #导入数据
mydata<-read.xlsx(workbook,1)
cludata<-mydata[,2 ∶4] #提取聚类变量
set.seed(12345)
clur<-kmeans(x=cludata,centers=4,nstart=4)
应用Clur$size、Clur$centers和Clur$cluster函数查看聚类结果,如图1所示。
利用R语言的可视化函数plot和scatterplotMatrix
图1 聚类结果
分别生成聚类结果分布图和单价出库频率、总出库量3个聚类要素的矩阵散点图,如图2、3所示。
图2 聚类结果分布图
图3 单价、出库频率和总出库量的矩阵散点图
1.2.2 结果分析
由图3可见:通过聚类分析将所有器材分为4类,其中:第1、3、4类器材的数量(Clur$size)都较少,分别只有16、6、19种,大部分器材为第2类器材,共178种;且第1类器材为价格(Clur$centers price)最便宜的小件器材,出库频率(Clur$centers fre)和总出库量(Clur$centers count)均最大,该类器材应确定为最重要类器材,应保持较大的库存量;第2类器材为价格一般的中小件器材,出库频率和总出库量均位居第2,应确定为次重要类器材,应保持一定的库存量;第3类器材为价格高昂的大件总成,其总出库量和出库频率均最小,一年只有几次,应确定为不重要类器材;第4类器材为价格较高的大中件器材,总出库量和出库频率与第2类器材相当,应确定为次重要类器材。这样,便将所有器材分为重要类、次重要类和不重要类3类,具体如表3所示。
表3 聚类结果表
表4为该仓库的库存器材结构与其2014年度的出库器材结构对比情况。
表4 某仓库库存器材结构与2014年度出库器材结构对比
由表4可以看出:库存器材结构与出库器材结构不符,不重要类器材库存积压过多,次重要类器材库存量不足,重要类器材库存量偏多,因此,在制订下一季度的器材入库量时,应结合分析结果进行调整,大幅减少不重要类器材的入库量,增加次重要类器材的入库量,适当减少重要类器材的入库量。
2.1 器材数量预测模型构建
由于神经网络具有出色的自学能力,其能以任意精度逼近非线性关系,可用来预测器材的出库量,因此笔者采用BP神经网络对编号为142784200的器材出库量进行预测。
表5为2014年度该仓库142784200器材的出库记录。
表5 2014年度器材142784200的出库记录
由于器材的出库记录为一维数据,而BP神经网络的输入为多维数据,因此笔者以器材前4次的出库量(m-4、m-3、m-2、m-1)为输入,预测后1次(第m次)出库量。为了使输入数据的数量级与传递函数的输出范围相符,需将输入数据进行标准化处理,使其在[0,1]区间内[7]。因此,根据
(2)
对表5的数据进行处理,得到如表6所示的预处理样本数据。式中:n为所有数据中最大值的整数位,这里取n=2。
这样,神经网络的结构可确定为3层,其中:输入层节点数为4,即器材前4次出库量;隐含层节点数一般为输入层节点数×2+1,这里取9;输出层节点数为1,即出库量预测值[8]。
表6 预处理样本数据
2.2 实例验证与结果分析
应用R语言的neuralnet函数
bpnet1<-neuralnet(m~m4+m3+m2+m1,data=mydata,hidden=9, err.fct=“sse”,linear.output=FALSE,threshold=0.00001)
对所建模型进行验证。
以表5中的前24组数据为学习样本,最后2组数据为测试样本,神经网络运行过程和结果分别如图4、5所示。
图4 神经网络运行过程
图5 神经网络运行结果
在神经网络学习训练过程中共进行了10 764次迭代,损失值为0.000 033;第1节点m-4到隐含层第1节点的偏差为1.080 14,权重为-0.956 93;隐含层第1节点到输出层的偏差为0.969 3,权重为-1.906 41。
应用表5中的最后2组数据对所建BP网络模型进行测试,输入数据分别为M1=(0.05, 0.05,0.02,0.1)和M2=(0.05,0.02,0.1,0.1),预测结果如图6所示,利用compute函数可得结果分别为0.087和0.053,其平均误差为e=1/2(0.087/0.1+0.053/0.06)=87.7%,因此,可认为该神经网络具有较好的拟合性。
图6 神经网络预测结果
利用测试后的神经网络对各器材的出库量进行预测,得到各器材的出库量预测结果,如表7所示。器材助理员根据表7所示的预测结果可预测下一季度各器材的需求量,并据此上报仓库下一季度总的器材需求量。
表7 器材出库量预测结果
[1] 罗雪, 崔南方. 维修备件基于AHP的ABC分类模型[J]. 工业工程与管理, 2004, 11(6):17-19.
[2] 郭智敏, 严洪森, 陈施华,等. 备件库存控制方法研究[J]. 计算机集成制造系统, 2003,9(11):128-132.
[3] OliviaParrRud. 数据挖掘实践[M]. 朱扬勇,译. 北京:机械工业出版社, 2003:65-72.
[4] 肖娟. 数据挖掘在物流业的应用综述[J]. 统计与决策, 2013 (11): 95-97.
[5] 薛薇. 基于R的统计分析与数据挖掘[M]. 北京:中国人民大学出版社, 2015: 273-379.
[6] 赵复涛. 军用车辆器材周转量优化研究[D]. 天津: 军事交通学院, 2012.
[7] 刘晶璟. 基于BP神经网络的零售连锁企业安全库存预测方法[J]. 物流技术, 2012, 31(11): 326-328.
[8] 曹艳华, 陈春良, 龚正波, 等. 基于神经网络趋势预测的装甲车辆柴油机寿命预测[J]. 装甲兵工程学院学报, 2014, 28(5): 29-33.
(责任编辑:王生凤)
Inventory Structure Analysis of Vehicle Material Warehouse Based on Data Mining
DONG Xiang-ying1, LÜ Ya-fei2, ZOU Rao-bangyan2
(1. Department of Military Vehicles, Academy of Military Transportation, Tianjin 300161, China; 2. Brigade of Postgraduate Management, Academy of Military Transportation, Tianjin 300161, China)
Aiming at the problems of the unreasonable structure of inventory vehicle types, inventory varieties and inventory quantities in the vehicle material warehouse, this paper, making full use of the data of actual consumption of vehicle material, establishes the analysis model on determining the variety and determining the quantity based on K-means cluster analysis and BP neural network. The model is verified in R and the result provides theoretic support for the decision of variety and quantity structure of the vehicle material warehouse.
vehicle material warehouse; inventory structure; data mining; R language
1672-1497(2016)05-0031-05
2016-07-07
董翔英(1963-),女,教授,硕士。
E92
A
10.3969/j.issn.1672-1497.2016.05.006