一种基于图卷积的零部件供应循环包装箱配送调度方法

文档序号:31540069发布日期:2022-09-16 23:37阅读:131来源:国知局
一种基于图卷积的零部件供应循环包装箱配送调度方法

1.本发明涉及循环包装箱多节点配送调度技术领域,具体是一种基于图卷积的零部件供应循环包装箱配送调度方法。


背景技术:

2.零部件供应链以下游整机制造企业为核心,协同上游零部件供应商、零部件物流商、包装箱提供商形成了上下游协作的功能网链结构。零部件供应是生产制造启动的基础和条件,也是产品销售、服务与各类物流活动的起点,其运行效率、质量和运营成本将对上下游生产企业的竞争能力产生直接的影响。其中,零部件物流是影响供应链整体运作成本与效能的关键因素。
3.零部件供应物流中,包装箱主要作为零部件的附属物,在运输、装卸、仓储等过程中起保护作用。由于零部件具有标准化程度高、结构相对精密,以及物流、库存环境要求高等特点,相较于普通快递物流包装箱、电商物流包装箱,零部件物流对包装箱的质量和设计要求更高,制造成本也居高不下。传统零部件供应物流常采用木质、纸质或普通塑料材质包装箱,一般使用几次后即需报废,生命周期短,不能多次循环使用,除了导致物流成本高昂外,对环境和资源造成大量的污染和浪费。
4.在零部件供应商降低包装箱成本需求和国家发展可循环包装以及绿色物流的政策、法规的共同推动下,第三方循环包装箱提供商应运而生。该类企业专门为零部件供应或整机制造企业提供零部件供应过程中的包装箱,这类模式一方面使得零部件供应和整机企业均无需购买包装箱,只需支付服务费即可在一定时间内重复、无限次的使用包装箱,大大降低了其多次购买和运营管理的成本;另一方面,包装箱提供商以一对多模式对一定数量的包装箱进行运营管理,专注于将包装箱在各客户群体节点间进行流转,箱体成本是其经营成本中占比最大的部分。因此,在包装箱质量和数量一定的情况下,被服务群体或节点越多、箱体流转越快,经营成本就会大大降低,利润率也会大大提升。可见,这是一种多方共赢的模式,已成为第三方物流细分领域重要的发展方向。显然,“降本”是其业务运营的关键,也是第三方循环包装箱提供商生存发展核心根本。而投入更少量的包装箱为更多的零部件供应链主体提供服务才是实现降本、达到增效的根本途径。循环包装箱在多个零部件供应商节点间的高效调度是实现其快速循环流转的基础支撑,所以循环包装箱的高效配送调度成为第三方包装箱提供商亟需解决的关键任务。为此,第三方循环包装箱提供商往往配置大批管理人员开展包装箱的调度工作。但随着零部件供应循环包装箱需求量的逐渐增多、被服务主体和物流节点愈加庞大,相关的业务数据也呈指数级增长,仅仅依靠人工经验和传统规划方法已无法快速、有效的进行配送调度安排。在大规模数据和节点网络环境下,如何在多需求节点间进行有效的包装箱配送调度已成为困扰循环包装箱提供商的一大难点问题。


技术实现要素:

5.本发明的目的在于克服上述背景技术中提出的问题,提供了一种基于图卷积的零部件供应循环包装箱配送调度方法,采用空间域k邻近的图卷积构建编码器、使用多种注意力机制构建编码器,模型训练时采用数据随机生成及强化学习方法,能在摆脱对数据集依赖的情况下,加快计算速度、提高求解质量。
6.本发明的目的主要通过以下技术方案实现:
7.一种基于图卷积的零部件供应循环包装箱配送调度方法,包括以下步骤:
8.(1)构建基于图卷积的编码器;
9.(2)构建基于注意力机制的解码器;
10.(3)强化学习训练循环包装箱配送调度模型;
11.(4)使用训练好的配送调度模型求解循环包装箱配送调度问题。
12.零部件供应链循环包装箱配送调度问题描述:第三方循环包装箱提供商设有某物流中心,该物流中心拥有足够数量、运载能力为q的配送车辆;现有总数为n的零部件供应商节点,各节点循环包装箱配送需求为di、各节点位置为posi,物流中心负责规划路线为全部零部件供应商节点提供循环包装箱配送服务,要求各节点的需求一次配送完成且配送路线总距离尽可能短以降低配送成本。
13.循环包装箱配送调度问题本质上是一个组合优化问题,其作为一个np-hard的问题,在当前求解方法和计算力水平下,只有较小规模,即客户数量较少的情况下,配送调度问题才能够找到全局最优解。现有求解配送调度问题的方法主要分为三类,包括精确算法、启发式算法和机器学习算法。
14.精确算法可以求解车辆路径问题的全局最优解,即精确解。但当问题规模扩大后,精确算法并不能求得一致的精确解。大规模配送调度问题精确算法解的不一致意味着大规模问题下高效的精确算法存在的可能性不大,所以寻找近似算法是必要和现实的。
15.启发式算法是在状态空间中的改进搜索算法,它对每一个搜索的位置进行评价,并得到最好的位置,再从这个位置进行搜索直到目标,最终获得次优解或者可以接受的非最优解。在启发式搜索中,对位置的估计十分重要,采用不同的估计方法可以获得不同的效果。目前已提出的启发式算法较多,分类也相当多,主要的启发式算法包括:构造算法、两阶段法和智能化算法。尽管针对配送调度问题进行了大量研究,但是由于存在数学模型上做出了许多不现实的数学假设、模型仅在理论上成立或小规模问题可以验证等问题,要解决一些实际的配送调度问题应用仍然非常困难。
16.为了解决其中的一些问题,研究人员将数据分析和机器学习工具与传统算法相结合,借助数据分析和机器学习技术显著增强了传统的配送调度问题建模和求解技术。但是深度学习类算法一般需要大量带标签数据集作为训练集,这对严重缺乏大规模多节点配送调度数据的现实提出了挑战。同时,随着问题规模的扩大,深度学习算法的求解速度仍然会受到较大影响。
17.综上所述,现有技术具有以下缺陷:
18.1、精确算法无法求解大规模配送调度问题,而第三方循环包装箱提供商往往为大量零部件供应商提供包装箱配送服务,精确算法显然难以应用在零部件供应循环包装箱配送调度问题求解中;
19.2、启发式算法往往对配送调度问题做出许多数学假设、建立相关带参数的数学模型,模型求解耗费大量时间,同时求解耗时会随问题规模的扩大急剧增加;
20.3、机器学习相关算法一般需要大量带标签数据集作为训练集,在严重缺少配送调度问题相关数据集的实际情况下,该类算法的性能难以得到保证。
21.针对上述大规模循环包装箱配送调度问题无法求解、求解耗时长和严重依赖带标签数据集等缺点,提供一种基于图卷积的循环包装箱配送调度方法。该方法采用空间域k邻近的图卷积构建编码器、使用多种注意力机制构建编码器,模型训练时采用数据随机生成及强化学习方法,能在摆脱对数据集依赖的情况下,加快计算速度、提高求解质量。
22.所述编码器包括输入层、嵌入层、拼接层、投影层、图卷积层和特征层。
23.在编码器中
24.(1)输入层:输入层接收配送调度问题实例中各节点位置posi和需求di,为不失一般性,定义di如下:
[0025][0026]
(2)嵌入层:嵌入层通过非线性变换把节点位置转换为向量表示sitei;
[0027]
(3)拼接层:xi表示第i∈{0,1,2,...,n}个节点的特征,其中第0个节点表示物流中心,节点的特征由节点的位置投影和需求投影拼接而成;由于物流中心没有配送需求,物流中心和客户节点特征xi分别定义如下:
[0028][0029]
(4)投影层:对于每个节点的特征xi,投影层通过一层线性映射,得到节点的嵌入为区分物流中心和客户节点,物流中心特征单独映射,其映射过程分别如下:
[0030][0031][0032]
其中,w
x
和b
x
表示线性映射层的参数;
[0033]
(5)图卷积层:得到节点的嵌入后,在图卷积层进行特征提取,图卷积层使用k邻近的自注意力机制进行计算,即选择距离第i个顶点最近的k个顶点进行对齐、注意力计算,限定节点只与它的邻居节点做信息交换以提高计算速度;
[0034]
(6)特征层:特征层将所有节点的嵌入取算数平均作为配送调度问题实例s的嵌入特征h,计算过程如下:
[0035][0036]
所述计算的计算过程如下:
[0037]

节点的嵌入通过全连接映射得到查询和矩阵、键矩阵和值矩阵如下:
[0038][0039]

计算节点i和节点j之间的相似度如下:
[0040][0041]

对相似度进行归一化处理得到注意力的权重如下:
[0042][0043]

对值矩阵加权求和得到节点i的更新顶点嵌入如下:
[0044][0045]

通过残差连接和批归一化处理更新的节点嵌入,bn表示批归一化处理,计算过程如下:
[0046][0047]

将节点嵌入线性映射后再进行残差连接和批归一化,l表示线性映射,计算过程如下:
[0048][0049]
按上述计算过程将自注意力机制和残差连接层堆叠n次,则每个节点和它的邻居进行n次信息的计算、传递,每个节点都在n次交换后都拥有了与自己依赖关系最近的节点的特征信息。
[0050]
所述解码器包括拼接层、多头注意力层、注意力层和输出层。
[0051]
在解码器中
[0052]
(1)拼接层:拼接层接受编码器编码的图嵌入,并把图嵌入、当前解序列最后一个节点的嵌入以及单前配送车辆剩余容量进行拼接,得到一个过程嵌入h'c:
[0053]
h'c=[h,h
seqt-1
,r
seqt-1
]
[0054]
其中,[.,.,.,]表示拼接操作;
[0055]
(2)多头注意力层:在多头注意力层,上述过程嵌入与各节点嵌入做多头归一化的点乘注意力机制;
[0056]
(3)注意力层:将上下文嵌入信息投影映射为查询矩阵,将各顶点映射为键矩阵和值矩阵;随后分别计算注意力值并经过tanh函数和缩放常数c进行缩放,得到解序列接下来可能的顶点j的嵌入表示uj,计算过程如下:
[0057]
qc=wqhc,ki=w
khi
,vi=wvhi[0058][0059]
(4)输出层:首先使用softmax函数将节点嵌入转化为各可能节点作为解序列下一节点的概率,概率的计算如下:
[0060][0061]
然后选取最大概率值对应的节点作为解序列的下一节点,更新当前车辆剩余容量并输出该节点嵌入及当前车辆剩余容量以进行下一步解码。
[0062]
所述多头注意力的头数参数为m,具体计算过程为:
[0063]

通过线性映射计算各查询矩阵、键矩阵和值矩阵如下:
[0064][0065]

分头计算查询矩阵和键矩阵的相似度、注意力权重和分头注意力如下:
[0066][0067][0068][0069]

将分头注意力映射、加和如下:
[0070][0071]
所述强化学习训练的训练流程如下:
[0072]

输入第三方循环包装箱提供商物流中心位置、零部件供应商节点位置及各节点循环包装箱需求,指定超参数;
[0073]

初始化两个结构、参数均相同的模型estimation-model和target-model;
[0074]

输入问题实例,以ε控制estimation-model节点输出,增强对环境的探索能力;
[0075]

输入相同问题实例,target-model以最大概率输出节点;
[0076]

根据estimation-model和target-model的输出计算参数梯度;
[0077]

使用adam优化器更新estimation-model网络参数;
[0078]

计算解的平均距离,若estimation-model效果优于target-model,对两模型参数进行单边t检验;若参数分布显著不同,进入

,否则转回


[0079]

使用estimation-model网络参数更新target-model网络参数;
[0080]

测试target-model解的平均距离是否下降,下降则保存target-model;
[0081]

当前轮次是否到达超参数指定值,到达则结束训练,未到达则转回


[0082]
综上,本发明与现有技术相比具有以下有益效果:
[0083]
1.使用基于空间域k邻近图卷积的方式计算、传播各配送节点特征,提高了求解速度;
[0084]
2.本发明提出的配送调度求解模型整体为编码器-解码器结构,求解过程中一次编码、迭代解码,求解效果好;
[0085]
3.模型训练采用数据生成和强化学习结合的方式,能有效解决模型训练对数据集
的依赖问题。
附图说明
[0086]
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本技术的一部分,并不构成对本发明实施例的限定。在附图中:
[0087]
图1为本发明的流程示意图。
[0088]
图2为编码器的结构示意图。
[0089]
图3为解码器的结构示意图。
[0090]
图4为调度模型在随机生成的训练集上解序列的平均总距离变化趋势示意图。
[0091]
图5为20个零部件供应商节点的循环包装箱配送调度问题路线示意图。
[0092]
图6为50个零部件供应商节点的循环包装箱配送调度问题路线示意图。
具体实施方式
[0093]
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
[0094]
本发明针对上述大规模循环包装箱配送调度问题无法求解、求解耗时长和严重依赖带标签数据集等缺点,提供一种基于图卷积的循环包装箱配送调度方法。该方法采用空间域k邻近的图卷积构建编码器、使用多种注意力机制构建编码器,模型训练时采用数据随机生成及强化学习方法,能在摆脱对数据集依赖的情况下,加快计算速度、提高求解质量。
[0095]
本发明的技术方案如下:
[0096]
(1)构建基于图卷积的编码器;
[0097]
(2)构建基于注意力机制的解码器;
[0098]
(3)强化学习训练循环包装箱配送调度模型;
[0099]
(4)使用训练好的配送调度模型求解循环包装箱配送调度问题。
[0100]
下面结合附图和具体实施步骤对本发明做详细说明。该方法分为四个步骤,其实施流程见图1:
[0101]
步骤1:构建基于图卷积的编码器
[0102]
构建基于图卷积的编码器如图2所示,该编码器主要包括输入层、嵌入层、拼接层、投影层、图卷积层和特征层。具体的:
[0103]
(1)输入层:输入层接收配送调度问题实例中各节点位置posi和需求di,为不失一般性,定义di如下:
[0104][0105]
(2)嵌入层:嵌入层通过非线性变换把节点位置转换为向量表示sitei;
[0106]
(3)拼接层:xi表示第i∈{0,1,2,...,n}个节点的特征,其中第0个节点表示物流中心。节点的特征由节点的位置投影和需求投影拼接而成。由于物流中心没有配送需求,物流中心和客户节点特征xi分别定义如下:
[0107][0108]
(4)投影层:对于每个节点的特征xi,投影层通过一层线性映射,得到节点的嵌入为区分物流中心和客户节点,物流中心特征单独映射,其映射过程分别如下:
[0109][0110][0111]
其中,w
x
和b
x
表示线性映射层的参数。
[0112]
(5)图卷积层:得到节点的嵌入后,在图卷积层进行特征提取。图卷积层使用k邻近的自注意力机制进行计算,即选择距离第i个顶点最近的k个顶点进行对齐、注意力计算,限定节点只与它的邻居节点做信息交换以提高计算速度。其计算过程如下:
[0113]

节点的嵌入通过全连接映射得到查询和矩阵、键矩阵和值矩阵如下:
[0114][0115]

计算节点i和节点j之间的相似度如下:
[0116][0117]

对相似度进行归一化处理得到注意力的权重如下:
[0118][0119]

对值矩阵加权求和得到节点i的更新顶点嵌入如下:
[0120]
h'i=∑α
ij
vj[0121]

通过残差连接和批归一化处理更新的节点嵌入,bn表示批归一化处理,计算过程如下:
[0122][0123]

将节点嵌入线性映射后再进行残差连接和批归一化,l表示线性映射,计算过程如下:
[0124][0125]
按上述计算过程将自注意力机制和残差连接层堆叠n次,则每个节点和它的邻居进行n次信息的计算、传递,每个节点都在n次交换后都拥有了与自己依赖关系最近的节点的特征信息。
[0126]
(6)特征层:特征层将所有节点的嵌入取算数平均作为配送调度问题实例s的嵌入特征h,计算过程如下:
[0127][0128]
步骤2:构建基于注意力机制的解码器
[0129]
构建基于注意力机制的解码器如图3所示,该解码器主要包括拼接层、多头注意力层、注意力层和输出层。具体的:
[0130]
(1)拼接层:拼接层接受编码器编码的图嵌入,并把图嵌入、当前解序列最后一个节点的嵌入以及单前配送车辆剩余容量进行拼接,得到一个过程嵌入h'c:
[0131][0132]
其中,[.,.,.,]表示拼接操作。
[0133]
(2)多头注意力层:在多头注意力层,上述过程嵌入与各节点嵌入做多头归一化的点乘注意力机制,多头注意力的头数参数为m,具体计算过程为:
[0134]

通过线性映射计算各查询矩阵、键矩阵和值矩阵如下:
[0135][0136]

分头计算查询矩阵和键矩阵的相似度、注意力权重和分头注意力如下:
[0137][0138][0139][0140]

将分头注意力映射、加和如下:
[0141][0142]
(3)注意力层:将上下文嵌入信息投影映射为查询矩阵,将各顶点映射为键矩阵和值矩阵;随后分别计算注意力值并经过tanh函数和缩放常数c进行缩放,得到解序列接下来可能的顶点j的嵌入表示uj,计算过程如下:
[0143]
qc=wqhc,ki=w
khi
,vi=wvhi[0144][0145]
(4)输出层:首先使用softmax函数将节点嵌入转化为各可能节点作为解序列下一节点的概率,概率的计算如下:
[0146][0147]
然后选取最大概率值对应的节点作为解序列的下一节点,更新当前车辆剩余容量并输出该节点嵌入及当前车辆剩余容量以进行下一步解码。
[0148]
步骤3:强化学习训练循环包装箱配送调度模型
[0149]
(1)训练方法及具体流程
[0150]
本发明提出的模型训练过程采用强化学习策略梯度方法,策略的基线值使用fixed q-target思想,即在强化学习过程中,同时构造两个结构相同但参数不同的网络模型estimation-model和target-model,随后将estimation-model训练和更新一些轮次,而target-model依然使用多轮训练前的网络参数,两模型的网络参数存在训练时间上的差异,使用target-model的求解效果作为基线值判断estimation-model是否有策略上的改进,如果有改进则用estimation-model的网络参数更新target-model参数。具体训练流程如下:
[0151]

输入第三方循环包装箱提供商物流中心位置、零部件供应商节点位置及各节点循环包装箱需求,指定超参数;
[0152]

初始化两个结构、参数均相同的模型estimation-model和target-model;
[0153]

输入问题实例,以ε控制estimation-model节点输出,增强对环境的探索能力;
[0154]

输入相同问题实例,target-model以最大概率输出节点;
[0155]

根据estimation-model和target-model的输出计算参数梯度;
[0156]

使用adam优化器更新estimation-model网络参数;
[0157]

计算解的平均距离,若estimation-model效果优于target-model,对两模型参数进行单边t检验;若参数分布显著不同,进入

,否则转回


[0158]

使用estimation-model网络参数更新target-model网络参数;
[0159]

测试target-model解的平均距离是否下降,下降则保存target-model;
[0160]

当前轮次是否到达超参数指定值,到达则结束训练,未到达则转回


[0161]
(2)求解效果评价指标
[0162]
最小化配送路线总距离是模型求解的关键目标,故评价指标为解序列对应路线的总距离。为防止少数问题实例对评价指标的影响,使用一个训练批次全部实例解序列的平均总距离mean-dis作为评价指标,该指标计算方式如下:
[0163][0164]
其中,b表示批次大小,batch表示该训练批次全部问题实例,i表示该训练批次的一个问题实例,seqi表示实例i的解序列,dis(
·
)表示解序列总距离计算公式。同时,循环包装箱配送调度问题作为一个np-hard问题,对问题实例求解往往需要大量计算时间,因此,模型求解时间也作为模型求解效果的评价指标。
[0165]
(3)指定超参数
[0166]
为说明模型的求解效果,本方案使用两组实验验证模型的求解效果,实验的部分超参数设置如下表所示:
[0167]
表1
[0168][0169]
(3)训练结果
[0170]
训练过程中,本发明提出的循环包装箱配送调度模型在随机生成的训练集上解序列的平均总距离变化趋势如图4所示。
[0171]
从图4中可以看到,客户节点数目分别为20和50的实验中,模型解序列的平均总距离都随着训练过程逐渐降低,其下降趋势前期迅速,中期逐渐减低,后期缓慢趋于平稳并最终稳定。其中,20个客户节点实验的平均总距离最终为6.51,50个客户节点实验的平均总距离为11.28。
[0172]
步骤4:使用训练好的配送调度模型求解循环包装箱配送调度问题
[0173]
使用训练好的配送调度模型求解循环包装箱配送调度问题,分别在20个零部件供应商节点和50个零部件供应商节点的循环包装箱配送调度任务中验证模型的配送调度效果。
[0174]
(1)首先求解20个零部件供应商节点的循环包装箱配送调度问题:
[0175]

各零部件供应商节点位置、循环包装箱需求量和物流中心位置如表2所示,0号节点表示物流中心,其余节点分别表示零部件供应商;
[0176]
表2
[0177][0178]

本发明提供的方法求解上述配送调度问题的结果如表3:
[0179]
表3
[0201]
路线8:0

10
→0[0202]

将求解结果转化为路线示意如图6所示,为简洁起见,图中没有标识各路线起点和重点与物流中心的连接。
[0203]
本发明使用基于空间域k邻近图卷积的方式计算、传播各配送节点特征,提高了求解速度;本发明提出的配送调度求解模型整体为编码器-解码器结构,求解过程中一次编码、迭代解码,求解效果好;模型训练采用数据生成和强化学习结合的方式,能有效解决模型训练对数据集的依赖问题。
[0204]
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1