竺宜颖,何胜学
(上海理工大学管理学院,上海 200093)
近年来,共享经济的理念逐渐走入人们的生活。共享经济对优化资源配置,提高利用率有着显著的帮助,得到了国家的大力发展,目前已经涌现出了例如共享单车、共享充电宝等共享经济产业。 随着人们生活水平的提高,信息技术的发展,以及几年来新冠疫情对人们生活习惯的改变,电子商务发展迅猛,这也带动了物流行业的进步,而仓储服务作为物流过程中非常重要的一环,对于提升物流效率、降低成本起着相当的作用。 共享仓储就是一种将共享经济的思想与仓储服务结合起来的业务形态。
超级网络是利用虚拟节点和虚拟弧段将抽象的问题用网络拓扑结构形象地表示出来的一种方法,超级时空网络就是在超级网络的基础上,考虑了节点和弧段的时间特征。 超级时空网络的思想适用于需要对时间和空间进行分割的共享仓储问题。 因此,本文将基于超级时空网络,对共享仓储的时空资源分配问题进行研究。
“超级网络( super network)”的概念是Sheffi 在1985年提出的,旨在表示节点之间连接复杂、规模巨大并且含有嵌套网络的大型网络。 美国科学家Anna Nagurney 最早给出了超级网络的明确概念,即高于而又超于现存网络的称为超级网络。 中国学者何胜学[1]以超级网络为基础提出了超级时空网络的概念并运用到了公交物品调度领域,分析公交物品运行过程中的时间特征和位置特征,并构建相应的公交调度超级时空网络。 何胜学[2]针对公交物品空驶问题及乘务组工作时间表公平性问题,建立物品调度模型,并设计了对应求解的改进和声搜索算法;针对减少公交物品空驶车次的问题,建立超级时空网络模型,并设计了一种具有混生、变异和成长三种基本操作的进化求解算法,何胜学等学者[3]还针对公交车不同用户之间不同的出行需求及偏好差异,建立了面向不同交通方式的公交客流网络分配模型,为多种交通方式共存的城市公交网络客流分配问题提供了理论支持。 王冬冬等学者[4]对于无人机交通巡视问题,引入基站选址条件,运用该学者提出的超级时空网络概念,将复杂的路径规划问题转变成模型进行求解,成功将超级时空网络应用到了无人车路径规划领域。
随着物流行业的蓬勃发展,仓储作为物流配送中非常重要的一环,许多学者对其进行了研究。 在现实生活中,一个供应商往往对应了多个零售商,针对每个零售商不同时间的不同需求带来的库存配置问题,Wang 等学者[5]对分配库存的时间进行了研究,通过对比得知仅在固定的交货点根据固定基准分配库存对于供应商的收益最优。 Feng 等学者[6]提出可以通过把库存在零售商之间转运来解决仓储资源不足的问题。 研究开发了一款非线性规划模型并运用遗传算法进行求解,得到最优转运策略。 互联网技术的发展使仓库的运转更加信息化,对仓储管理也带来了影响。 Heide 等学者[7]研究了网络结构对库存动态发货策略的影响,利用一个具有随机需求的离散时间建模框架,捕获了各种各样的网络结构。 利用马尔可夫决策,得到了小型网络的最优订单和动态发货决策,即产品特性显著影响网络结构的有效性。 何家波等学者[8]发现了互联网背景下共享仓储行业存在的必要性,分析了其面临的问题并提出了发展的方向。 另外还通过案例比较自建仓库、租赁专业仓库和共享仓库三种模式的费用,得出共享仓库费用最低的结论,验证了共享仓库的可行性和有效性。 对于共享仓库的模式而言,必定会有多位参与者,那么参与者之间的利益分配同样值得探究。 Lozano 等学者[9]针对不同公司的合并运输问题,利用合作博弈解决了共同成本分配问题。Momeni 等学者[10]则聚焦在会随时间劣化的产品供应链,利用合作博弈分配利润,整合优化协调整个供应链的运转。 Jin 等学者[11]针对同一个港口内多个公司共享仓储空间的情况,运用基于拉格朗日乘数的启发式方法来解决公司之间的成本分配问题。Xiao 等学者[12]则是站在码头经营者的角度对于装卸和存储两项定价策略创造模型,以求得最大利润下装卸和仓储定价,为利润提取和存储成本效率之间的权衡提供了新的见解。
在仓储系统中,物品出库分拣的效率也会影响到整个系统的运转。 目前电子商务环境下,批量货品增多,但仓储空间和分拣时间有限,为了提高空间利用率,电商仓库可以选择把不同的SKU 分配到相同的位置。 Yang 等学者[13]针对3 种典型的仓储系统制定了订单批量拣选优化问题可用的处理算法。除上述仓储方案外,目前还有把仓库前后分区的仓储策略。 前置区用于拣货,仓储量较少,离出口近,可以由机器人进行分拣。 后置区用于大容量存储,离仓库入口近,由人工管理。 Jiang 等学者[14]针对这种前后分区的仓储模式,运用变量邻域搜索求解方法使前后2 个区之间的内部物流运营效率和空间利用率提升,分拣时间缩短。 Mirzaei 等学者[15]提出了产品亲和性的概念,即多个不同产品可能会被一起订购,研究者们把这些具有亲和性的产品放在同一仓库内可以有效减少分拣时间。
现有对于仓储方面的研究多以智能仓储或仓储管理系统为核心,甚少涉及共享仓储领域。 但是不同企业生产库存的峰值和峰谷会在一年中的不同时间在不同地点发生,实现仓储共享可以有效均衡企业之间互补的仓储需求,提高仓库资源利用率,降低企业生产物流成本。 并且从未来发展看,尤其是一些房价较高的区域,共享仓储不仅仅可以面向企业,个人存储业务也非常值得发展。 对于个人存储业务,相较于企业,其体量更小、流动性更大,因此更加需要合理高效的共享仓储管理系统来协助其运行。
目前,有关超级时空网络的研究并不多,并且大多集中在交通运输领域。 本文将基于超级时空网络的思想,通过建立模型并求解,对共享仓储带来的时空资源分类问题进行优化。
由于超级时空网络可以利用节点和弧段将共享仓储问题形象地表示出来,为了更加细致地刻画共享仓储过程中物品的移位过程,本研究将每个共享库位的空闲时段划分成多个更短的相同时长的空闲时段,并规定物品智能在分割时段的始末进行移位。图1 是一个空闲时间为周二-周三和周六的共享库位p1,图1 中的阴影部分表示该时段内库位处于占用状态,不能再容纳其他物品,空白部分表示该时段内库位处于空闲状态,可以容纳物品。
图1 共享仓储库位开放时间Fig. 1 Open hours of shared warehouse storage locations
以一天为单位划分图1 中的时间,得到的空闲和占用时段如图2 所示。 经过时段分割,共享库位p1的空闲时段由2 个变为了3 个时间长度为一天的时段。
图2 经过时段分割的共享仓储库位开放时间Fig. 2 Open hours of shared warehouse storage locations segmented by time periods
利用超级网络的思想将分割后的小时段共享库位抽象为库位节点,模拟共享仓储系统复杂的时空演化过程。 每个库位节点都具有时间和空间特征,即每个库位节点表示其所属库位的具体空闲时段。例如,Cp,ti和Cp,tj表示库位p在时段ti和tj上的2 个库位节点。
一个具有p1、p2和p3三个共享库位的仓库形成的节点网络如图3 所示。 图3 中,第一、二、三行的库位节点分别属于库位p1、p2和p3,每一行的节点按照时间先后顺序排列,且同一列的库位节点所处的时段相同。
图3 由库位节点形成的节点网络Fig. 3 Node network formed by storage location nodes
通过添加虚拟弧段将同一库位在不同时段的库位节点连接起来得到一个联通的网络,如图4 所示,建立共享仓储超级时空网络。 由于弧段连接的2 个库位节点属于同一个库位,物品不需要移动,所以移位惩罚和移位时间为0,该弧段仅表示2 个库位节点之间的连接关系。
图4 连接同一库位的库位节点Fig. 4 Connect the storage bin nodes of the same storage bin location
由于仓库内物品的存储时间不同,每个库位空闲和忙碌的时间也不同,当物品所存放的库位在下一时段被其他物品占用时,该物品就需要发生移位,但是根据库位之间的不同距离会产生相应的移位成本和移位风险,为了使物品能够尽可能地存放在同一个库位里,该弧段将被赋予一个移位距离和移位惩罚。 图5 中的库位p1和库位p2属于同一仓库。库位p1在时段t1上的节点Cp1,t1不仅与该库位在下一时段上的节点Cp1,t1存在联接,而且可以和库位p2下一时段上的节点建立联接。 库位p1在时段t4处于占用状态,原先库位p1上的物品需要转移到其他库位上,此时节点Cp1,t3只可以和库位p2建立联接,即产生移位。
图5 同一仓库不同库位之间节点的连接Fig. 5 Connection between storage bin nodes located in different storage bin locations within the same warehouse
物品除了可以在同一个仓库内变换位置,在当前仓库内的库位不足时,也可以被移动到其他仓库,合理利用多个仓库的仓储空间。 但由于不同仓库之间移位需要进入外部坏境,会导致仓储成本增加,并且发生物品损坏的可能性也较同一仓库内存储有所提高,因此物品在不同仓库之间移动的成本、时间、惩罚都较大,从而使系统在计算时限制不同仓库之间移动的次数。
1.5.1 构造移位节点集合
通过之前小节添加的弧段的特性可知,虚拟弧段仅用于连接2 个节点,可以附带移动距离和移动惩罚,但不具备时间属性。 由于不同仓库之间的移动需要花费较多的时间,因此在不同仓库之间移动物品时需要另外构造具备时间属性的移位节点。 同时,本文对时段进行了分割,一个节点表示一个时段,但仓库之间的移动所需要的时间可能不止一个时段,故在移位节点的基础上,还需要构造节点集合来整合多个移位节点。 图6 为一个移位节点集合,集合中有3 个移位节点,表示此次移位需要3 个时段完成,移位节点之间用虚拟弧段连接,此处的虚拟弧段并不附加距离和惩罚。
图6 移位节点集合Fig. 6 A set of relocation nodes
1.5.2 连接移位节点与库位节点
当物品需要在2 个仓库之间移动位置时,需要利用虚拟弧段连接先前的库位节点与移位节点集合,再连接到移动之后的库位节点。 图7 表示物品在属于2 个仓库的库位p1和p2之间移动的过程,2个仓库之间移动需要花费3 天时间。 其中,Cp1,t1和Cp2,t5为库位节点;和三个移位节点构成了移位集合;库位p1和p2之间的移动惩罚和移动距离附加在与之间的虚拟弧段上;与Cp2,t5之间的虚拟弧段仅表示连接关系。
图7 连接移位节点与库位节点Fig. 7 Connect relocation nodes to storage bin nodes
1.5.3 属于不同仓库2 个库位之间的连接
连接不同仓库的2 个库位如图8 所示。 其中,2个库位p1和p2属于2 个不同仓库,两个仓库之间移位需要花费2 天,所以p1与p2之间的移位时间可以转化为2 个移位节点。 图中物品有7 天的仓储需求,但是库位p1只能满足4 天,故物品需要中途移动位置。 物品在Day2 时,可以选择继续存放在库位p1,或直接转移到另一个仓库的库位p2,如果选择不移动,则可以在Day3 或Day4 进行移位。
图8 连接不同仓库的2 个库位Fig. 8 Connect two storage bin locations belonging to different warehouses
由于可能存在库位不足的情况,故构建虚拟节点,该节点可以在任意时间容纳任意数量的物品。但是为了限制系统使用该节点,设置连接该节点的成本非常大。
基于之前章节的设定,本文中共享仓储超级网络中的节点主要有4 种,分别是:具有时间和空间属性的库位节点和移位节点,以及只具有时间属性的共享仓储起始节点和终止节点。
网络中的时空弧段共有7 种。 第一种用于连接同一库位上相邻2 个时间段的库位节点,仅表示连接关系;第二种用于连接同一仓库内不同库位上2个相邻时间段的库位节点,该种弧段附带较小的移位惩罚和移位距离;第三种是用于前一节点是库位节点,后一节点是移位节点情况下的连接,该种弧段附带2 个仓库之间移动所带来的移位惩罚和移位距离;第四种是用于连接移位集合内部的移位节点,仅表示连接关系;第五种是用于前一节点是移位节点,后一节点是库位节点情况下的连接,该种弧段仅表示连接作用;第六种用于连接起始节点与库位节点,起始节点与连接的库位节点开始时间相同,该种弧段仅表示连接关系;第7 种弧段用于连接库位节点与终止节点,终止节点与连接的库位节点的终止时间相同,该种弧段仅表示连接作用。 在七种时空弧段中,只有第二种和第三种弧段是具有移位惩罚和移位距离属性的,其他弧段仅表示连接作用。
本研究将通过上述4 种节点和7 种时空弧段建立超级时空网络,把共享仓储问题转化成在一个具有容量限制的网络中,为仓储物品寻找成本最小的仓储路径问题。
图9 为一个拥有2 个仓库的共享仓储系统超级时空网络示意图。 2 个仓库分别拥有2 个和3 个共享库位,r1和r2分别表示2 个仓库的起始节点,s1和s2分别表示2 个仓库的终止节点,第一行虚线画出的圆代表系统中的虚拟节点。 图9 中,每种填充形状代表一个有仓储需求的物品,分别描述了物品进入共享仓储系统后可能安排的4 种存储方案。 填充为方格的方案中,物品从起始到终止都存储在同一个库位中;填充为横线的方案中,物品原先所在的库位中途被占用,但是同一个仓库中有其他空闲库位,因此物品需要在仓库内进行移位;填充为竖线的方案中,物品原先所在的库位不能提供全程的仓储服务,并且当前仓库内没有其他空闲库位了,但是系统内另外一个仓库有空位,故物品需要在2 个仓库之间进行移位;填充为斜线的方案中,物品所在的库位只能提供一段时间的仓储服务,并且共享仓储系统内的所有仓库都没有空闲库位了,故物品需要移动至虚拟库位中。
图9 共享仓储超级时空网络示意图Fig. 9 Schematic diagram of a super spatiotemporal network for shared warehouse
基于本研究的设定和共享仓储系统的应用,做出以下假设:
(1)所有物品均为预约制仓储,已知仓储活动的开始和结束时间。
(2)同一仓库内移动物品的时间成本忽略不计,但存在移位距离和移位惩罚,2 个不同库位之间移动的移位距离和移位惩罚已知。
(3)不同仓库之间移动物品的移位时间、移位距离和移位惩罚已知。
V—网络中所有物品构成的集合。
C—网络中所有节点构成的集合,其中i,j∈C表示网络中2 个节点。
Cr—网络中所有起始节点构成的集合。
Cs—网络中所有终止节点构成的集合。
CP—网络中所有的库位节点构成的集合,包含虚拟节点。
CM—网络中所有的移位节点构成的集合。
—进入节点i的所有弧段构成的集合。
—所有从节点i出去的弧段构成的集合。
A—网络中所有弧段构成的集合,其中a∈A表示网络中一条弧段。
A1—第一类弧段,即连接同一库位的库位节点弧段的集合。 该集合内的每条弧段上的距离和移位惩罚为0。
A2—第二类弧段,即连接同一仓库不同库位上库位节点弧段的集合,弧段上的距离为,移位惩罚为。
A3—第三类弧段,即从库位节点到移位节点的有向弧段的集合,弧段上的距离为,移位惩罚为。
A4—第四类弧段,即连接移位集合中移位节点之间弧段的集合。 该集合内的每条弧段上的距离和移位惩罚为0。
A5—第五类弧段,即从移位节点到库位节点的有向弧段的集合。 该集合内的每条弧段上的距离和移位惩罚为0。
A6—第六类弧段,即从起始节点到库位节点的有向弧段的集合。 该集合内的每条弧段上的距离和移位惩罚为0。
A7—第七类弧段,即从库位节点到终止节点的有向弧段的集合。 该集合内的每条弧段上的距离和移位惩罚为0。
xa—弧段a被利用的次数。 值为1,表示物品经过该弧段;否则表示未经过该弧段。
为了更好决策物品在共享仓库中的供需匹配问题,增加仓库利用率,减少因移位导致的物品折损,建立以最小化物品仓储成本为优化目标的数学模型:
上述数学模型为目标函数。a∈A2表示a为一条属于同一仓库不同库位的库位节点之间的联接,第一项表示最小化物品在仓库内变换库位的距离,第二项表示最小化物品在仓库内变换库位的移位惩罚。a∈A3表示a为一条属于不同仓库不同库位的库位节点之间的联接,第三项和第四项分别表示最小化物品在仓库之间变换库位的距离和惩罚。
约束(2)表示从起始节点r出去的联接必须且只能被利用一次,用于限制起点处的流量为1。 即每件物品必须在其仓储需求开始时刻存放于一个库位节点:
约束(3)表示进入终止节点s的联接必须且只能被利用一次。 用于限制终点处的流量为1
约束(4)表示进入库位节点i的弧段最多被利用一次,即每个库位节点最多被利用一次。 该式表示一个共享库位在一个时段最多只能存放一件物品:
约束(5)表示节点流量守恒,即物品进出库位节点的次数平衡:
约束(6)用来限制决策变量的取值范围,即库位节点使用次数的取值范围。
为了验证基于超级时空网络建立的共享仓储系统模型,以及设计的求解算法的有效性,本研究使用Java 语言编写了程序,并在NetBeans IDE 15 平台中进行运行和分析。
同时,本研究将运用模拟退火算法求出目标函数的最优解。 模拟退火算法(Simulated Annealing,SA)来源于固体退火原理,将固体加温至足够高,再让其缓缓冷却。 加温时,固体内部粒子随着温度升高呈无序状态,内能增大。 冷却时,粒子逐渐呈有序状并在每个温度下都达到平衡状态。 最后在常温时达到基态,内能减为最小。 SA 算法最初由Metropolis 等学者在1953年提出,由于固体物质的退火过程与一般组合优化问题具有极大的类似性,1983年Kirkpatrick 等学者成功将模拟退火算法引入组合优化领域。 与邻域搜索算法类似,SA 算法是一种基于概率的寻优算法,用来在一定时间内在一个很大的空间里搜索问题的近似最优解。 模拟退火算法从一个较高的温度出发,利用降温参数使温度不断下降,直至达到最低温度,利用模拟算法求得的解与初始值无关。 与其他启发式方法相比不同的是,SA 算法可以按照一定的概率接受劣质解,即能概率性地跳出局部最优而趋近于全局最优。
在该算例中设置模拟退火算法的参数如下,初始温度为1 000°,冷却降温系数0.05,终止温度为1°,每个温度下的最大领域搜索次数为5 次。
本节将分析一个拥有13 个库位和20 件物品的共享仓储需求匹配问题,该问题可以直接求出最有效的仓储方案。 算例的共享仓储系统中共有3 个仓库,其中第一个仓库有6 个库位,第二个仓库有4 个库位,第三个仓库有3 个库位。 表1 为物品仓储需求,已根据天为一个时段进行分割。 表2 ~4 分别为3 个仓库中13 个库位的空闲时间。
表1 物品仓储需求Tab. 1 Goods storage demand
表2 仓库1 的库位空闲时间Tab. 2 Available time of warehouse location in warehouse 1
表3 仓库2 的库位空闲时间Tab. 3 Available time of warehouse location in warehouse 2
表4 仓库3 的库位空闲时间Tab. 4 Available time of warehouse location in warehouse 3
仓库1 内共享库位之间的移位距离矩阵L1:
仓库2 内共享库位之间的移位距离矩阵L2:
仓库3 内共享库位之间的移位距离矩阵L3:
仓库之间的移位距离矩阵D:
仓库之间的移位时间矩阵T:
最终得到该算例的最优共享仓储结果如下。 表5 为物品仓储路径表,表示20 个物品在需求仓储时间段内的存储情况。 图10 为库位使用情况示意图,表示13 个库位在空闲时间段内的使用情况。 算例2 中有4 件物品需要移位,其余16 件可以存储在同一个库位中,移位率为20%。
表5 物品仓储路径表Tab. 5 Item storage path table
图10 库位使用情况示意图Fig. 10 Schematic diagram of storage location usage
模拟退火算法迭代情况如图11 所示,算例2 经过模拟退火算法的迭代得到了该情况下共享仓储的最少花费。 目标函数由初始可行解2 378.153 2经过688 次迭代,最终收敛于532.066 6。
图11 模拟退火算法迭代情况Fig. 11 Iteration of simulated annealing algorithm
本研究基于超级时空网络的概念,利用节点和弧段将共享仓储问题形象化。 再针对问题建立目标函数。 进而通过实例分析证明模型的可行性,并运用模拟退火算法求得当前情况下成本最少的仓储方案,证明了算法的有效性。 本文所研究的内容可以使共享仓储的成本大大降低,具有实际运用价值。
共享仓储作为一种利用现有的仓储资源解决生活中仓储资源时间空间上分配不均的方法,可以提高仓库利用率、降低物流成本,给客户带来更多收益。 另外,随着城市化的发展,尤其是在一些一线城市,人均住房面积逐渐减少,一些具有季节性的物品、例如衣物,可以选择存放在仓库中。 个人买家相较于厂商而言,物品占用的体积较少,进出仓库的频次较多,在这种情况下,共享仓储系统尤显重要。 另外,本文所研究的是平面型仓库,之后还可以针对有货架的三维仓库进行研究。 除了共享仓储外,本文所提出的一般性方法也可以运用在例如共享充电桩、广告投放等需要对时空资源进行分配的问题上,未来可以进行深入研究。