基于量子算法的车辆路径优化方法、装置、设备及介质与流程

文档序号:36528315发布日期:2023-12-29 21:02阅读:24来源:国知局
基于量子算法的车辆路径优化方法与流程

本发明涉及量子计算,尤其涉及一种基于量子算法的车辆路径优化方法、装置、设备及介质。


背景技术:

1、有容量约束的车辆路径问题(capacitated vehicle routing problem,cvrp)是一类典型的组合优化问题,其主要目标是在满足每个客户需求及车辆容量限制的前提下,使配送和运输成本最小化,在物流、交通等领域有着广泛的应用。

2、处理cvrp问题的现有方法包括精确算法和启发式算法。由于cvrp问题属于np-hard问题,解空间随着规模呈指数增长,精确算法在大规模问题下效率低,实用性较差。常见的路径规划算法包括基于贪婪算法的遗传算法、模拟退火算法、启发式算法等。其中启发式算法是一种解决优化问题的方法,通过使用启发信息和经验规则来搜索近似最优解。这类算法的主要优势在于较快速地找到近似最优解,尤其适用于复杂、大规模问题。


技术实现思路

1、发明人发现,利用量子计算机的优势,设计和实现量子优化算法,可以利用量子计算特性高效地寻找优化问题,包括cvrp的近似最优解。为了获得高效优质的大规模cvrp的最优解,本发明实施例提供了一种基于量子算法的车辆路径优化方法、装置、设备及介质。

2、第一方面,本技术实施例提供一种基于量子算法的车辆路径优化方法,该方法包括:

3、根据各节点的需求量、各车辆的运输容量和不同节点间路径的权重,以车辆的运输容量为约束条件,基于预设精确算法或带约束的k平均算法将所有节点划分为多个集群;

4、将所述多个集群对应分配多台量子计算机,针对每个分配给量子计算机的集群:

5、判断所述集群中节点的数量是否超过预设量子比特阈值n;

6、若是,则迭代执行从所述集群中选择包括n个节点的组合,获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述组合的解,并根据所述组合的解更新得到所述集群的解的过程,直至所述集群的解收敛得到所述集群的目标解;若否,则获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述集群的目标解;

7、将得到的每个集群的目标解进行合成,得到车辆路径优化的解。

8、本技术实施例的一个或一些可选的实施方式中,所述迭代执行从所述集群中选择包括n个节点的组合,获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述组合的解,并根据所述组合的解更新得到所述集群的解的过程,直至所述集群的解收敛得到所述集群的目标解,包括:

9、针对每一集群,生成所述集群的旅行商问题的初始解作为当前解,并获取置空的禁忌列表;

10、从所述集群中随机选择包括n个节点的组合,并将所述组合添加到所述禁忌列表;

11、获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述组合的解,根据所述组合的解和所述当前解,更新得到新的解;

12、判断所述新的解是否优于当前解;

13、若是,将所述新的解更新为当前解,并置空禁忌列表,重新执行上述从所述集群中随机选择包括n个节点的组合,得到所述组合的解,确定所述集群的新的解,并判断所述新的解是否优于当前解的步骤;

14、若否,则继续从所述集群中选择包含n个节点的新的组合,并将所述新的组合添加到所述禁忌列表,继续执行得到所述新的组合的解,确定所述集群的新的解,并判断所述新的解是否优于当前解的步骤;

15、重复执行上述步骤,直至迭代条件达到预设条件,将更新后的当前解作为目标解。

16、本技术实施例的一个或一些可选的实施方式中,所述判断所述新的解是否优于当前解,包括:

17、根据预先构建的代价函数,计算对应所述新的解的代价函数值与所述当前解的代价函数值;

18、判断所述新的解的代价函数值是否小于所述当前解的代价函数值;

19、若是,则确定所述新的解优于所述当前解。

20、本技术实施例的一个或一些可选的实施方式中,所述代价函数通过下述方式构建:

21、以每次只访问一个节点和每个节点只访问一次为约束条件,将总成本最小化为优化目标,基于下述公式1构建得到旅行商问题的所述代价函数:

22、

23、其中,wi,j表示两个节点间的权重,d为惩罚参数,xi,p为一个二元变量,表示第i个节点在路径的第p个位置是否被访问。

24、本技术实施例的一个或一些可选的实施方式中,所述重复执行上述步骤,直至迭代条件达到预设条件,将更新后的当前解作为目标解,包括:

25、重复执行上述步骤,直至所述禁忌列表的大小达到第一预设值和c(nt,n)组合数中的较小值,或迭代次数达到第二预设值,将更新后的当前解作为目标解,其中,nt为集群中节点的数量。

26、本技术实施例的一个或一些可选的实施方式中,所述根据各节点的需求量、各车辆的运输容量和不同节点间路径的权重,以车辆的运输容量为约束条件,基于预设精确算法或带约束的k平均算法将所有节点划分为多个集群,包括:

27、从所有节点随机选择k个中心节点;其中k为车辆数量,且k为大于等于2的正整数;

28、根据各非中心节点与各中心节点间路径的权重大小,将对应非中心节点分别分配给与其权重最小的中心节点,将所述节点划分为k个集群;

29、根据每一集群中各节点的需求量,判断每一集群的总需求量是否均小于车辆的运输容量;

30、若是,则重新确定每一集群的平均中心点,得到新的k个中心节点,并重新得到新的k个集群;

31、重复上述更新中心节点和k个集群的步骤,直到满足聚类收敛条件,得到最终的k个集群。

32、本技术实施例的一个或一些可选的实施方式中,由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述集群的目标解的过程,包括:

33、经典计算机以每次只访问一个节点和每个节点只访问一次为约束条件,将总成本最小化为优化目标,构建所述旅行商问题的代价函数,并将所述代价函数编码得到哈密顿量;

34、量子计算机使用预先构建的参数化量子线路和初始化的线路参数制备量子态,并在所述量子态上测量所述哈密顿量的期望值;

35、经典计算机根据所述哈密顿量的期望值,使用预设经典优化算法得到调整后的线路参数;

36、量子计算机使用所述调整后的线路参数,使所述哈密顿量的期望值最小化;

37、重复上述测量所述哈密顿量的期望值和调整所述线路参数的步骤,直到达到预设收敛条件,得到所述集群的目标解。

38、本技术实施例的一个或一些可选的实施方式中,经典计算机以每次只访问一个节点和每个节点只访问一次为约束条件,将总成本最小化为优化目标,构建所述旅行商问题的代价函数,并将所述代价函数编码得到哈密顿量,包括:

39、经典计算机以每次只访问一个节点和每个节点只访问一次为约束条件,将总成本最小化为优化目标,基于下述公式1构建得到所述旅行商问题的代价函数:

40、

41、其中,wi,j表示两个节点间的权重,d为惩罚参数,xi,p为一个二元变量,表示第i个节点在路径的第p个位置是否被访问;

42、将所述代价函数的二元变量xi,p映射到泡利z门矩阵上,编码得到哈密顿量h,如公式2所示:

43、

44、本技术实施例的一个或一些可选的实施方式中,量子计算机通过下述方式构建所述参数化量子线路:

45、初始化线路参数,构建节点数为2的变分量子线路;

46、基于所述节点数为2的变分量子线路,采用递归方式,得到所述参数化量子线路。

47、本技术实施例的一个或一些可选的实施方式中,所述递归方式通过下述步骤实现:

48、在前(k-1)2个量子比特上施加节点数为k-1时的变分量子线路,得到量子态ψk-1;其中k为大于等于3的正整数;

49、在第k(k-1)+1个量子比特施加x门;

50、在[k(k-1)+1,k2]范围内(即倒数k个量子比特)的每两个相邻量子比特上依次施加ry,cz,ry门的组合,然后在每两个相邻量子比特上依次施加cnot门,控制比特在下,得到量子态wk(φ);

51、在ψk-1,wk(φ),和k-1个空闲比特的对应比特上施加k-1个cswap门,施加比特为qv,k,qk,p,qv,p,其中v=1...k-1,p=1...k-1。

52、本技术实施例的一个或一些可选的实施方式中,所述获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述组合的解,根据所述组合的解和所述当前解,更新得到新的解,包括:

53、获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述组合的解;

54、将所述当前解中对应所述组合的n个节点的顺序更新为所述组合的解,得到所述新的解。

55、本技术实施例的一个或一些可选的实施方式中,由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述组合的解的过程,包括:

56、经典计算机以每次只访问一个节点和每个节点只访问一次为约束条件,将总成本最小化为优化目标,构建所述旅行商问题的代价函数,并将所述代价函数编码得到哈密顿量;

57、量子计算机使用预先构建的参数化量子线路和初始化的线路参数制备量子态,并在所述量子态上测量所述哈密顿量的期望值;

58、经典计算机根据所述哈密顿量的期望值,使用预设经典优化算法得到调整后的线路参数;

59、量子计算机使用所述调整后的线路参数,使所述哈密顿量的期望值最小化;

60、重复上述测量所述哈密顿量的期望值和调整所述线路参数的步骤,直到达到预设收敛条件,得到所述组合的解。

61、第二方面,本技术实施例提供一种基于量子算法的车辆路径优化装置,该装置包括:

62、划分模块,用于根据各节点的需求量、各车辆的运输容量和不同节点间路径的权重,以车辆的运输容量为约束条件,基于预设精确算法或带约束的k平均算法将所有节点划分为多个集群;

63、判断求解模块,用于将所述多个集群对应分配多台量子计算机,针对每个分配给量子计算机的集群:

64、判断每一所述集群中节点的数量是否超过预设量子比特阈值n;

65、若是,则迭代执行从所述集群中选择包括n个节点的组合,获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述组合的解,并根据所述组合的解更新得到所述集群的解的过程,直至所述集群的解收敛得到所述集群的目标解;若否,则获取由量子计算机和经典计算机使用vqe算法求解旅行商问题得到所述集群的目标解;

66、合成模块,用于将得到的每个集群的目标解进行合成,得到车辆路径优化的解。

67、第三方面,本技术实施例提供一种计算机系统,包括经典计算机和多个量子计算机;

68、所述经典计算机设有上述的基于量子算法的车辆路径优化装置。

69、第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述的基于量子算法的车辆路径优化方法。

70、第五方面,本技术实施例提供一种量子经典混合计算机设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述的基于量子算法的车辆路径优化方法。

71、第六方面,本技术实施例提供一种包含指令的计算机程序产品,应用于经典计算机,当计算机程序产品在经典计算机上运行时,使得经典计算机执行如上述的基于量子算法的车辆路径优化方法。

72、本发明实施例提供的上述技术方案的有益效果至少包括:

73、本技术实施例提供的基于量子算法的车辆路径优化方法,根据分治思想将cvrp问题基于背包问题进行分解,得到多个旅行商问题,相比整体求解的启发式算法,可以使得求得的解的质量不会随问题规模的增大而快速下降,使得处理和求解每个子问题变得更具可行性且更高效;并且,可以通过基于量子计算并行处理求解每个集群的旅行商问题,通过判断各个集群的节点数是否超过预设阈值,选择使用邻域搜索算法结合变分量子本征求解器算法(variational quantum eigensolver,vqe)迭代求解或使用vqe算法直接求解,有效地利用了目前规模有限的量子计算机进行旅行商问题求解,提高了求解速度,从而充分利用量子计算机的优势,并行地解决多个旅行商问题。

74、本技术实施例提供的基于量子算法的车辆路径优化方法,在集群的节点数超过量子计算机处理阈值时,结合领域搜索算法通过找到局部最优解的方式逐步改善可行解,最终得到集群的解,因此,该方法能够适应不同的cvrp问题规模。

75、下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1