处理多任务运行路径冲突的方法、装置、设备及介质制造方法及图纸

技术编号:38400562 阅读:19 留言:0更新日期:2023-08-07 11:12
本申请涉及一种处理多任务运行路径冲突的方法、装置、设备及介质。其中方法包括:计算每一个任务在单独运行时的最优路径,作为初始最优路径,并记录初始路径对应的初始收益;构建初始为空的优先级队列,将所有任务放入优先级队列,并按照初始路径收益的大小排序;设置初始的最优方案的代价为正无穷,从优先级队列中,按优先级从高到低依次出队任务,对任务路径中的冲突点进行处理;当优先级队列中的冲突点全部处理完毕时,计算动态方案的代价;比较动态方案的代价与当前的最优方案的代价的大小,选择代价更小的方案,作为最优方案。采用本方法能够在对多任务同时规划路径时,处理任务路径间冲突的同时保证任务的总收益最大化。路径间冲突的同时保证任务的总收益最大化。路径间冲突的同时保证任务的总收益最大化。

【技术实现步骤摘要】
处理多任务运行路径冲突的方法、装置、设备及介质


[0001]本申请涉及路径规划领域,特别是涉及一种处理多任务运行路径冲突的方法、装置、设备及介质。

技术介绍

[0002]路径规划在很多领域都具有广泛的应用。在运输领域的路径规划实践中,对于一个运输任务,已知该任务的起点和目的地,需要规划该任务从地点到目的地的最优路径。“最优”的标准根据任务的不同有所不同,如果仅仅计算任务起点与目的地的最短距离,在真实的场景中可能并不是最优的选择。例如,在运输任务场景中,选择红绿灯少并且几乎不会拥堵的高速环线执行运输任务,会比选择路程虽短,但是红绿灯多且经常性拥堵的市区内路段更快到达目的地。在这个过程中,对路径的不同选择可以看作是任务在路径中的不同的路径代价,而到达时间不同则可以看作任务完成后获得的不同的收益。在实际应用中,往往需要考虑任务的收益最大化来确定任务运行的最优路径。
[0003]对单个任务的最优规划相对来说比较容易,但是当多个任务同时规划路径时,如果使用单个任务的路径规划方法,计算出的每个任务各自的路径之间可能会出现冲突。任务路径之间的冲突可能表现为多种形式,例如,多个任务路径之间对共同的路径网络节点同时占用,又或者两个任务之间存在一些运行规章限制带来的冲突,比如运输任务规定两个任务彼此的载具间隔不得小于100米,则某个时间点两个任务间隔小于100米即会产生冲突。因此,需要找到一种方法,在对多任务同时规划路径时,处理所有任务路径间冲突的同时尽量使所有任务的总收益最大化。

技术实现思路

[0004]有鉴于此,本申请旨在提出一种处理多任务运行路径冲突的方法、装置、设备及介质,以解决传统的路径规划方法难以在处理多任务间冲突的同时保证任务收益的问题。
[0005]为达到上述目的,本申请的技术方案是这样实现的:
[0006]本申请实施例第一方面提供一种处理多任务运行路径冲突的方法,所述方法包括:
[0007]计算每一个任务在单独运行时的最优路径,作为初始最优路径,并记录初始路径对应的初始收益;所述最优路径为任务能够获得最大收益所对应的任务运行路径;
[0008]构建初始为空的优先级队列,将所有任务放入所述优先级队列,并按照所述初始路径收益的大小排序;所述任务的初始路径收益越高,所述任务的优先级越高;
[0009]设置初始的最优方案的代价为正无穷,从所述优先级队列中,按优先级从高到低依次出队任务,查找所述出队的任务对应的当前路径中是否存在冲突点;若不存在,则标记所述当前路径中所有互斥网络区域内的路径点;若存在,则对所述冲突点进行处理;所述处理为执行以下任一动作:在冲突点强制停留或选用备用路径;所述最优方案的代价为所有任务的最优路径的路径代价之和;
[0010]当所述优先级队列中,所有任务对应的路径中的冲突点全部处理完毕时,计算所有任务对应的当前路径的路径代价之和,作为动态方案的代价;
[0011]比较所述动态方案的代价与当前的最优方案的代价的大小,选择代价更小的方案,作为最优方案。
[0012]可选地,对所述冲突点进行处理,包括:
[0013]去掉所述冲突点,计算所述出队的任务对应的最优路径,作为所述备用路径,计算所述备用路径的路径代价;
[0014]计算所述出队的任务对应的当前路径中,所述任务在所述冲突点上强制停留的停留代价;
[0015]将所述备用路径的路径代价与所述当前的最优路径的路径代价作差,并将差值与所述停留代价进行比较;若所述差值小于所述停留代价,则将所述备用路径的路径代价,作为所述当前的最优路径的路径代价,并将所述备用路径作为当前的最优路径;若所述差值大于或等于所述停留代价,则在所述当前的最优路径中,添加在所述冲突点上强制停留的动作,将所述停留代价加入所述当前的最优路径的路径代价中,并更新所述当前的最优路径。
[0016]可选地,所述处理多任务运行路径冲突的方法,还包括:
[0017]构建初始为空的已完成任务列表;所述已完成任务列表用于存储已经处理完冲突点的任务;所述冲突点为至少两个任务进入相同的互斥网络区域的时间点;所述互斥网络区域为指定的运输载具在运行时的最小间隔距离作为半径的圆形区域;
[0018]当所述出队的任务对应的当前路径中不存在冲突点时,将所述任务添加到所述已完成任务列表的末尾。
[0019]可选地,所述处理多任务运行路径冲突的方法,还包括:
[0020]构建初始为空的强制停留字典;所述强制停留字典用于存储路径中的冲突点与在所述冲突点停留的任务的映射关系;所述强制停留字典中,一个冲突点对应一个任务冲突列表,所述任务冲突列表中存在一个或多个在所述冲突点强制停留的任务;
[0021]判断所述冲突点是否存在于所述强制停留字典中;若不存在,则将所述冲突点与所述出队的任务的映射关系,添加到所述强制停留字典的末尾;若存在,则将所述出队的任务,添加到所述强制停留字典中所述冲突点对应的任务冲突列表的末尾。
[0022]可选地,选择代价更小的方案,作为最优方案,包括:
[0023]若所述动态方案的代价大于或等于所述当前的最优方案的代价,则当前的最优方案保持不变;
[0024]若所述动态方案的代价小于所述当前的最优方案的代价,则将所述动态方案作为所述当前的最优方案。
[0025]可选地,所述处理多任务运行路径冲突的方法,还包括:
[0026]在所述最优方案对应的强制停留字典中,遍历每一个冲突点及其对应的任务冲突列表,将所述冲突列表中的任务随机排序,计算所述当前的最优方案的竞争方案;
[0027]比较所述竞争方案的代价与所述当前的最优方案的代价的大小,选择代价更小的方案作为所述当前的最优方案。
[0028]可选地,计算所述当前的最优方案的竞争方案,包括:
[0029]按加入所述强制停留字典的顺序,遍历所述强制停留字典中的每一个冲突点;按加入所述冲突点对应的任务冲突列表的顺序,遍历所述任务冲突列表中的每一个任务;若所述任务冲突列表中,排在任一冲突点之后的所有任务的所述初始收益之和,大于所述任务的所述初始收益,则将所述任务作为临界任务;
[0030]构建初始为空的随机子队列,将所述临界任务及之后的所有任务随机排序,加入所述随机子队列中;构建初始为空的已完成任务子列表,将所述临界任务之前的任务加入所述已完成任务子列表中;
[0031]从所述随机子队列中依次出队任务,重新对所述随机子队列中的所有任务进行冲突处理,并将处理完毕的任务添加到所述已完成任务子列表的末尾;
[0032]当所述随机子队列中所有任务的冲突都处理完毕时,计算当前所有任务的最优路径的路径代价之和,作为所述竞争方案的代价。
[0033]根据本申请实施例的第二方面,提供一种处理多任务运行路径冲突的装置,用于实现本申请实施例的第一方面所提供的处理多任务运行路径冲突的方法,所述装置包括:
[0034]初始收益计算模块,被配置为计算每一个任务在单独运行时本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种处理多任务运行路径冲突的方法,其特征在于,包括:计算每一个任务在单独运行时的最优路径,作为初始最优路径,并记录初始路径对应的初始收益;所述最优路径为任务能够获得最大收益所对应的任务运行路径;构建初始为空的优先级队列,将所有任务放入所述优先级队列,并按照所述初始路径收益的大小排序;所述任务的初始路径收益越高,所述任务的优先级越高;设置初始的最优方案的代价为正无穷,从所述优先级队列中,按优先级从高到低依次出队任务,查找所述出队的任务对应的当前路径中是否存在冲突点;若不存在,则标记所述当前路径中所有互斥网络区域内的路径点;若存在,则对所述冲突点进行处理;所述处理为执行以下任一动作:在冲突点强制停留或选用备用路径;所述最优方案的代价为所有任务的最优路径的路径代价之和;当所述优先级队列中,所有任务对应的路径中的冲突点全部处理完毕时,计算所有任务对应的当前路径的路径代价之和,作为动态方案的代价;比较所述动态方案的代价与当前的最优方案的代价的大小,选择代价更小的方案,作为最优方案。2.根据权利要求1所述的处理多任务运行路径冲突的方法,其特征在于,对所述冲突点进行处理,包括:去掉所述冲突点,计算所述出队的任务对应的最优路径,作为所述备用路径,计算所述备用路径的路径代价;计算所述出队的任务对应的当前路径中,所述任务在所述冲突点上强制停留的停留代价;将所述备用路径的路径代价与所述当前的最优路径的路径代价作差,并将差值与所述停留代价进行比较;若所述差值小于所述停留代价,则将所述备用路径的路径代价,作为所述当前的最优路径的路径代价,并将所述备用路径作为当前的最优路径;若所述差值大于或等于所述停留代价,则在所述当前的最优路径中,添加在所述冲突点上强制停留的动作,将所述停留代价加入所述当前的最优路径的路径代价中,并更新所述当前的最优路径。3.根据权利要求2所述的处理多任务运行路径冲突的方法,其特征在于,还包括:构建初始为空的已完成任务列表;所述已完成任务列表用于存储已经处理完冲突点的任务;所述冲突点为至少两个任务进入相同的互斥网络区域的时间点;所述互斥网络区域为指定的运输载具在运行时的最小间隔距离作为半径的圆形区域;当所述出队的任务对应的当前路径中不存在冲突点时,将所述任务添加到所述已完成任务列表的末尾。4.根据权利要求2所述的处理多任务运行路径冲突的方法,其特征在于,还包括:构建初始为空的强制停留字典;所述强制停留字典用于存储路径中的冲突点与在所述冲突点停留的任务的映射关系;所述强制停留字典中,一个冲突点对应一个任务冲突列表,所述任务冲突列表中存在一个或多个在所述冲突点强制停留的任务;判断所述冲突点是否存在于所述强制停留字典中;若不存在,则将所述冲突点与所述出队的任务的映射关系,添加到所述强制停留字典的末尾;若存在,则将所述出队的任务,添加到所述强制停留字典中所述冲突点对应的任务冲突列表的末尾。5.根据权利要求1所述的处理多任务运行路径冲突的方法,其特征在于,选择代价更小
的方案,作为最优方案,包括:若所述动态方案的代价大于或等于所述...

【专利技术属性】
技术研发人员:许京奕刘智慧王子奇孙霞童承栋
申请(专利权)人:北京大数据先进技术研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1