基于聚类算法的双孢菇保鲜运输智能导航策略
2018-09-06张子奇陈成明
张子奇,陈成明
(上海海洋大学 工程学院,上海201306)
0 引 言
随着经济的发展,食品安全越来越受人们重视,因此在社会上也陆续开展了各种对于食用菌的探讨分析。双孢菇作为现阶段种植范围最宽广、每年产出最多、老百姓能够消费得起的一种食用菌,是食用菌研究领域的模式材料,也是目前探讨和研究的主要试验对象。双孢菇含有较多的水分,比较鲜嫩,但也难以保存,其保质期往往只有几天,在运输过程中很容易出现损坏、质量下降、无法食用的情况,食用口味下降的主要原因是失水萎焉、组织褐变、破膜开伞[1]。
刚采集的双孢菇含有丰富的水分,但新陈代谢速率较快,其营养成分也因此被逐渐消耗掉。除此之外,双孢菇外表没有显著的对水分进行保护的组织结构,很容易出现蒸发、开伞、失水等。另外一方面,外部环境因素的影响,如很容易出现微生物、腐烂等也让双孢菇的质量下降[2]。若要在短短的几天内保留住双孢菇的商品价值,就要对其运输过程进行充分的探讨分析,蘑菇贮藏保鲜和快速过程运输已成为蘑菇产业健康发展的一个重要课题。
北斗卫星导航系统由我国自主研发,是继美国GPS和俄罗斯GLONASS之后的又一个成熟度高且应用范围广的卫星导航系统[3]。针对传统物流运输模式存在的诸多不足,本文提出了一种基于北斗卫星导航系统的物流导航系统,结合双孢菇保鲜技术和聚类算法,旨在使双孢菇运输过程中能够选择更有利于双孢菇运送至各供货点的配送方案。
1 系统整体方案
1.1 系统基本构架
本文设计的运输过程中对商品实行动态追踪的系统框架如图1所示,这套系统是在北斗系统的基础上开发,其主要构成部分有北斗卫星、车载设备、服务器等。在这些构成部分中,车载设备能够实时的确定商品所处的位置并把该消息传送给北斗指挥机,同时也能够接受监控中心的指示,按照指示采取相应的行动。车载摄像头的功能是在对双孢菇的开采和运送的时候进行拍照和录像,避免出现意外,保证运输过程中的安全。对北斗指挥机的各种消息还有运输过程的信息进行归类整理是服务器的功能。数据信息通过信号塔覆盖用户使用的区域,可以非常便利地使用手机移动终端接收。用户在手机终端上,可以利用Internet等向服务器发出查找实时的物流消息的指示[4]。
1.2 定位通讯模块
市场上有很多导航定位模块,综合考虑后,UM220-ⅢN芯片具有双系统、能耗低、性能强、灵敏度高、价格适中等优点,最适合本系统,其芯片电路如图2所示[5]。
导航信号被天线感知、接收到之后,经过功分器,信号被分为两束新的信号。对应不同的射频前端产生中频信号,芯片在上述情况下实现电文解算同时具有导航信号的追踪功能,在此基础上,由ARM处理器完成PVT解算,最终通过射频前端将解算后的数据发送给下一级[6]。
无线通讯模块选用的是华为公司的MU509通讯模块,这是一种双频宽带码分多址(WCDMA)工业级无线模块,下行速率为3.6 Mbit/s,同时拥有短信功能和语音功能,内置 TCP/IP协议栈。该通信模块具有8个wire UART,采用RS-232串行接口,同时支持双路接收、发送以及TCP/IP、PPP通信协议。利用MU509通讯模块,ARM处理器模块就能够在任何时间任何地点实现数据的传送和处理功能[7]。
1.3 系统软件
谷歌地图提供了基于JavaScript技术的API接口,本系统在不建立地图服务器的基础上实现了嵌入Google Maps的地图服务应用,通过上述接口对谷歌地图进行二次开发使用。北斗卫星导航定位模块的软件设计部分主要包括数据的接收、处理和发送程序。其中定位信息采用中断方式来获取并保存在Buffer缓冲器中。通过调用Google提供的API接口函数及多线程处理数据,最终实现软件端对运输车辆的定位追踪和智能导航[8]。
2 基于北斗系统的双孢菇运输问题分析
2.1 物流运输过程的路况背景
以食用菌生产企业为例,该企业生产基地位于上海市金山区,供货范围覆盖整个上海市区和邻近城市。从实时路况监测可以看出,运输过程中经过拥堵路段的可能性很高,如图3所示。
分析这一问题时,应注意以下两点:
1) 因为配送目的地基本在上海市及周边,在同一时刻,各个区域的交通状况是相互关联的,所以不能简单采用一辆车既定的路线有拥堵时立刻做出调整路线的决定,而要考虑当前整体环境下的交通情况;
2) 每一辆运输车不止给一个供货点送货,而是给一个范围内距离相近的多个供货点送货,当做出调整路线的决定之后,同样由该辆运输车送货的其他供货点的收货时间受到的影响是难以预估的。
所以,需要结合实时路况、双孢菇的新鲜度和与客户约定送达时间三个指标,综合制定物流路线方案。
2.2 聚类算法数据分析
如图4所示,生产基地共有18辆车负责物流配送,运送范围覆盖整个上海及苏州、嘉兴部分地区。每辆运输车负责给一个区域内的16个客户送货,共计288个供货点。供货点数量为N,虽然需要考虑每一个供货点的货物及时送达问题,但智能导航系统在一个时刻智能地对M个区域各自的M辆运输车的交通数据组成的数据矩阵来制定运输路线方案。在智能导航系统中,设运输车数量为M个(N一般设计为M的整数倍),这种情况下,供货点数量N远远大于运输车数量M,因此需要采用复合控制的方式,即一辆运输车对应F个供货点,F为16.
矩阵Mor(t0)为t0时刻各辆运输车的监控矩阵,该矩阵为M*F维矩阵,矩阵的每一行代表一辆运输车所对应的供货点。对于运输过程中的每一时刻,均需要依次以运输车为单位(即以行为单位)遍历矩阵中各个供货点所代表的剩余配送时间。设某运输车对应的各个供货点剩余配送时间为
Mori(t0)= [Mori1(t0),Mori2(t0),…,
MoriF(t0)]
(1)
若其中某个供货点的剩余配送时间低于阈值,则需要调整负责该供货点的运输车路线,因此在遍历中作为是否改变路线的判据与矩阵中的最小剩余配送时间相关,即
If{min(Mori1(t0),Mori2(t0),…,
MoriF(t0)) (2) 但是,当一辆运输车的送货路线调整时,它所配送的供货点都会受到影响。因为复杂的路况和司机调整路线时的主观判断,这种影响带来的结果是难以预估的。为了避免在每一次调整路线时追溯每一个供货点之间路线修改关联影响的复杂数据模型,本文使用Kmeans聚类算法,同时考察对应时间的整个物流系统中的N个供货点的剩余配送时间、交通流畅度、运送双孢菇新鲜度三个指标。因运输车每天统一装货发车,双孢菇从菇房采出后,最快等4 h,最久要等28 h,可用双孢菇在仓库的等待配送时间代表其新鲜度。 现对某一时刻采集到的运输数据分析。对288个供货点,用矩阵H来记录各个区域的关键性状。H矩阵中每行代表一个供货点,而在每一行中,第一列记录双孢菇新鲜度,第二列记录拥堵路段比例,第三列记录剩余约定配送时间。 亦可以通过三维坐标散点图来显示各个供货点的三个关键性状的指标分布,每个供货点可以作为三维坐标的一个点,其中拥堵路段比例为x坐标,剩余约定配送时间为y坐标(min),双孢菇新鲜度为z坐标(h),关键性状散点图如图5所示。 其次,逐一考察上述三维坐标轴中的点。首先,找出各个供货点的剩余约定配送时间、拥堵路段比例和双孢菇新鲜度相对异常的点,在此基础上再按照双孢菇新鲜度的高低对所有区域进行分类,对于双孢菇新鲜度高于整体水平的部分供货点,不需要做出任何调整,反之要对双孢菇新鲜度较低的区域给予一定的关注。如果坐标点的双孢菇新鲜度低于阈值,则要调整运送路线;如果是因为同一运输车配送的邻近供货点在上次考察中双孢菇新鲜度低于阈值,调整路线而受到连带影响的供货点,则需要把该供货点的运输路线再次调整,以保证每个供货点的双孢菇新鲜度情况尽可能地达到最优。另外在导航过程中,如果深究一个供货点中某一个指标的调控过程和牵连关系,问题就会变得更加复杂。然而在实际导航各供货点得到双孢菇新鲜度时,只需在被分配的双孢菇新鲜度较低的供货点中筛选出拥堵路段比例、剩余约定配送时间与平均水平差异较大的供货点即可。其中Kmeans算法,满足对导航数据处理的需求。 聚类分析又称群分析,它是研究(样品或指标)分类问题的一种统计分析方法,同时也是数据挖掘的一个重要算法。K-means聚类算法属于硬聚类算法,就如同回归类、机器学习算法的朴素贝叶斯模型、SVM等,这也就说明对所有的样例都进行了合理的分类。聚类过程是一个重复移动类中心点的过程,即把类的中心点,也称重心(centroids),移动到其包含成员的平均位置,然后重新划分其内部成员。它的优点是算法原理简单,需要调节的超参数只有一个k,而且具有出色的速度和良好的可扩展性。Kmeans算法的缺点是k值难以确定,k是算法计算出的超参数,表示类的数量。另外,Kmeans算法虽然可以把样本自动分配到不同的类别中,但不能决定类别的数量[9]。 一般对k的确定需要根据生产实际和控制算法的复杂度来决定,在本文建立的监测模型中,考虑到需求,只要按双孢菇新鲜度的高低分两类便可,即k=2. 在上述分类的基础上,可按求取最小累计误差点的方式,计算各个分类的聚类中心点(Xcj,Ycj,Zcj),即 (Xcj,Ycj,Zcj)= {(Xcj,Ycj,Zcj)|min (YPi-Ycj)2+ (3) 在完成对各个分类聚心的计算后,下一步计算每一个样本与其所属分类中心点之间的相似度(这里为欧式距离),将样本点归到最相似的类中。其中Kmeans成本函数Cost的计算公式为 Costi= ((XI-XC)2+(YI-YC)2+ (ZI-ZC)2)(1/2). (4) 在计算各个分类各个点的成本函数后,对各个分类的成本函数进行从大到小顺序排序,将排序中处在u%位置的成本函数设定为阈值Sdoor,因此,差异点的判据为 If{Costi (5) 在MATLAB中导入数据,基于聚类算法的仿真程序遍历监测模型中的每一个点,筛选出差异点,如图6所示。 图中浅色点即为双孢菇新鲜度较低的部分,在此区域中拥堵路段比例和剩余约定配送时间指标较为异常,需要及时调整运输路线。仿真结果图中各符号含义如表1所示。 表1 聚类仿真结果 在双孢菇保鲜运输的问题中,传统的导航模式只关注基于经验的外界环境因素(如温度,湿度,二氧化碳浓度等指标)的监测,往往忽视了作为关注主体的双孢菇本身。本文在应用北斗技术实现双孢菇精准运输的基础上,考虑了双孢菇保鲜、运输车实际配送中调整路线时产生的联动影响等问题,制定了智能选择最理想的运输路线为目的的导航策略,并搭建完成了整个系统的硬件、软件基本构架。在一定程度上解决了双孢菇运送过程中对双孢菇本身关注不足的问题。2.3 聚类过程及仿真结果
3 结束语