一种多人预约调度路径规划方法及相关装置与流程

文档序号:14569469发布日期:2018-06-01 21:23阅读:191来源:国知局
一种多人预约调度路径规划方法及相关装置与流程

本申请涉及计算机技术领域,特别涉及一种多人预约调度路径规划方法、多人预约调度路径规划装置、计算机以及计算机可读存储介质。



背景技术:

随着计算机的计算能力的发展,现实的规划问题也可以根据不同的算法在计算机中计算出解决方案。其中,应用最广泛的是在解决路径规划问题中,可以通过计算机和相应的规划算法高效的分配人力资源,并且随着计算机性能的增强,其分配的速度也是越来越快。目前应用于此类问题的算法有蚁群算法、粒子群算法、禁忌算法、遗传算法、模拟退火算法等。

在计算机辅助规划不断应用中,需要其解决的问题也在不断地变化。多人预约调度路径规划问题就是路径规划问题的变种,是一种特殊的组合优化问题。此类问题在纯多人路径规划问题的基础上,限制了访问目标的时间段限制,并要求访问者与被访问者之间在某些方面具有足够的匹配度。在路径规划问题的新的限制下,求解最优的总路径规划难度更大,并且原始的路径规划算法不再适用于此类算法,造成了一定的计算难度。

因此,如何解决多人预约调度路径规划问题,是本领域技术人员所关注的重点问题。



技术实现要素:

本申请的目的是提供一种多人预约调度路径规划方法、多人预约调度路径规划装置、计算机以及计算机可读存储介质,通过在原有的蚁群算法中根据多人预约调度路径规划添加了时间窗变量和匹配度变量,得到蚁群算法的变体,在计算中加入参数数据就可以在多人预约调度的情况下得到行动者的调度路径,解决了多人预约调度路径规划问题。

为解决上述技术问题,本申请提供一种多人预约调度路径规划方法,包括:

根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

根据所述路径规划中的每个行动者与所述目的地的匹配度构造出匹配度变量;

将所述时间窗变量和所述匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

利用所述多人预约调度蚁群算法进行路径规划。

可选的,所述根据路径规划中的目的地允许访问的时间限制构造出时间窗变量,包括:

设置所述路径规划中的目的地的到达时间上限和到达时间下限;

根据所述到达时间上限和所述到达时间下限,并添加所述行动者移动的消耗时长参数和当前时刻参数构造出所述时间窗变量和所述时间窗变量的时间窗取值方式。

可选的,所述根据所述路径规划中的每个行动者与所述目的地的匹配度构造出匹配度变量,包括:

设置所述行动者的行动者匹配数值和所述目的地的目的地匹配数值;

根据所述行动者匹配数值和所述目的地匹配数值构造出所述匹配度变量和所述匹配度变量的匹配度取值方式。

本申请还提供一种多人预约调度路径规划装置,包括:

时间窗变量获取模块,用于根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

匹配度变量获取模块,用于根据所述路径规划中的每个行动者与所述目的地的匹配度构造出匹配度变量;

蚁群算法改进模块,用于将所述时间窗变量和所述匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

路径规划模块,利用所述多人预约调度蚁群算法进行路径规划。

可选的,所述时间窗变量获取模块,包括:

时间限制设置单元,用于设置所述路径规划中的目的地的到达时间上限和到达时间下限;

时间窗变量构造单元,用于根据所述到达时间上限和所述到达时间下限,并添加所述行动者移动的消耗时长参数和当前时刻参数构造出所述时间窗变量和所述时间窗变量的时间窗取值方式。

可选的,所述匹配度变量获取模块,包括:

匹配度设置单元,用于设置所述行动者的行动者匹配数值和所述目的地的目的地匹配数值;

匹配度变量构造单元,用于根据所述行动者匹配数值和所述目的地匹配数值构造出所述匹配度变量和所述匹配度变量的匹配度取值方式。

本申请还提供一种计算机,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时,实现如下的步骤:

根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

根据所述路径规划中的每个行动者与所述目的地的匹配度构造出匹配度变量;

将所述时间窗变量和所述匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

利用所述多人预约调度蚁群算法进行路径规划。

本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现如下的步骤:

根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

根据所述路径规划中的每个行动者与所述目的地的匹配度构造出匹配度变量;

将所述时间窗变量和所述匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

利用所述多人预约调度蚁群算法进行路径规划。

本申请所提供的一种多人预约调度路径规划方法,包括:根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;根据所述路径规划中的每个行动者与所述目的地的匹配度构造出匹配度变量;将所述时间窗变量和所述匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;利用所述多人预约调度蚁群算法进行路径规划。

通过在原有的蚁群算法中根据多人预约调度路径规划添加了时间窗变量和匹配度变量,得到蚁群算法的变体,在计算中加入参数数据就可以在多人预约调度的情况下得到行动者的调度路径,解决了多人预约调度路径规划问题。

本申请还提供一种多人预约调度路径规划装置、计算机以及计算机可读存储介质,具有上述有益效果,不再赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例所提供的一种多人预约调度路径规划方法的流程图;

图2为本申请实施例所提供的一种多人预约调度路径规划方法的获取时间窗变量的流程图;

图3为本申请实施例所提供的一种多人预约调度路径规划方法的获取匹配度变量的流程图;

图4为本申请实施例所提供的一种多人预约调度路径规划装置的结构示意图。

具体实施方式

随着计算机计算能力的提升,根据算法可以解决的问题变得越来越复杂,另一面其可以解决的问题也越来越贴近现实问题。其中,针对路径规划在现实中不只需要行动者如何到达目的地,还需要考虑到行动者什么时候到达,在多个行动者和多个目的地的情况下,该行动者到达的目的地是否为匹配的目的地,因此就衍生出了多人预约调度路径规划问题。由于其基于基本的路径规划问题增加了新的限制以及新的变量,因此原有的路径规划问题不再适用于该类问题。

为此本申请提供一种多人预约调度路径规划方法、多人预约调度路径规划装置、计算机以及计算机可读存储介质,通过在原有的蚁群算法中根据多人预约调度路径规划添加了时间窗变量和匹配度变量,得到蚁群算法的变体,在计算中加入参数数据就可以在多人预约调度的情况下得到行动者的调度路径,解决了多人预约调度路径规划问题。

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

请参考图1,图1为本申请实施例所提供的一种多人预约调度路径规划方法的流程图。

本实施例提供了一种多人预约调度路径规划方法,可以解决多人预约调度路径规划问题,该方法可以包括:

S101,根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

本步骤旨在根据目的地的允许访问的时间限制构造出时间窗变量。

其中,本技术方案需要解决的问题是在基础问题上增加了时间限制和匹配度限制,因此本步骤主要是针对时间限制构造相关变量。变量的数学公式可以根据路径规划中关于时间限制的内容进行构造,变量能反应变量关于时间限制的变化规律以及取值方式,方便在后续的计算中可以很好的应用。

变量的具体形式可以是关于时间限制的线性函数,也可以是关于时间限制的分段函数、还可以是常系数。其中,时间限制可以是行动者关于到达目的地的时间限制,具体形式可以是时间范围,也可以是某一具体的时间点,或者是多个时间段,还可能根据具体问题的设定的不同,其时间限制的方式随之不同,其反应时间限制的数学刻画方式也就不同。

因此,只要可以通过数据刻画出关于时间限制的变化,在此都可以作为时间窗变量的具体形式。

S102,根据路径规划中的每个行动者与目的地的匹配度构造出匹配度变量;

在步骤S101的基础上,本步骤旨在根据解决问题中的行动者与目的地的匹配度构造出匹配度的相关变量。所以匹配度变量的具体构造方式需要根据行动者与目的地之间匹配度的表现方式而决定。

其中,行动者与目的地之间的匹配度的表现方式可以是单向度的数值变化体现,行动者的匹配数值大于目的地数值就代表这两者匹配,小于就不匹配;也可以是关于匹配度的函数,行动者的匹配度输入函数当输出的值为末一个特定的值时就代表匹配,或者输出在某个范围内就代表匹配。所以具体的表现方式可能根据具体问题的不同而不同。因此,匹配度变量的构造方式就会随着其表现形式的不同而变化,也就是说视具体问题选择不同的构造方式。

但无论匹配度变量选择什么样的构造方式,都要满足可以通过数学刻画出关于匹配度的变化,以供改进原有的路径规划算法。

S103,将时间窗变量和匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

在步骤S101与步骤S102的基础上,本步骤旨在将得到的两个新变量添加到原有的蚁群算法中,得到改进后的蚁群算法。

其中,蚁群算法是一种用来寻找优化路径的概率型算法。算法主要是循环遍历所有行动者到所有目的地计算转移概率再更新信息素,最后循环出最优的规划路径。本步骤中的变量是在计算转移概率时添加,以控制行动者在时间和匹配度双重限制下的转移概率,进而得到的改进的蚁群算法就可以根据新问题的新限制进行路径规划。

S104,利用多人预约调度蚁群算法进行路径规划。

在步骤S103的基础上,本步骤旨在根据改进后的蚁群算法进行路径规划。其路径规划的计算方式与基本的算法大致相同,只需要在基本算法的基础上根据新添加的变量做适应性的改变,其他部分大致相同,不再赘述。

综上,本实施例通过在原有的蚁群算法中根据调度问题的新限制添加了时间窗变量和匹配度变量,得到新的蚁群算法的变体,在计算中再加入新的计算数据就可以在多人预约调度的情况下得到行动者的规划路径,解决了多人预约调度路径规划问题。

请参考图2,图2为本申请实施例所提供的一种多人预约调度路径规划方法的获取时间窗变量的流程图。

结合上一实施例,本实施例主要是针对上一实施例中如何获取时间窗变量做的一个具体解释,其他部分与上一实施例大体相同,相同部分可以参考上一实施例,在此不再赘述。

本实施例可以包括:

S201,设置路径规划中的目的地的到达时间上限和到达时间下限;

本步骤旨在设置路径规划中的目的地到达时间的上限和到达时间的下限,本实施例中是通过行动者到达目的地的时间范围进行时间限制,所以在本步骤中需要设置相应的事件上限以及时间下限。

通过数学公式进行表示是

(bi,ei]

可以被称作时间窗。

其中,bj为目的地j的到达时间上限,又叫做目的地时间窗上限,ej为目的地的j到达时间下限,又叫做目的地时间窗下限。

S202,根据到达时间上限和到达时间下限,并添加行动者移动的消耗时长参数和当前时刻参数构造出时间窗变量和时间窗变量的时间窗取值方式。

在步骤S201的基础上,本步骤旨在添加行动者移动的消耗时长参数和当前时刻参数,与到达时间的时间窗上限和时间窗下限进行变量构造,构造出时间窗变量和时间窗变量的取值方式。

其中,时间窗变量可以通过ωij进行表示。将Cij作为行动者从所在地i到达目的地j需花费的时长,就是移动消耗的时长,将t作为当前时刻。

进一步的,时间窗的取值方式可以通过分段函数进行表示,如下:

其中,从上至下的时间比较如下:

bj≤t+Cij≤ej代表到达时间在j(目的地)的时间窗之内、t+Cij≤bj代表到达时间在j的时间窗上限之前以及t+Cij>ej代表到达时间在j的时间窗下限之后。

其中,i代表行动者出发的目的地,j代表目的地。

至此,就获得了关于时间限制的时间窗变量,可以通过该变量根据时间限制做出不同的变化规律,以控制蚁群算法中的转移概率的计算。

请参考图3,图3为本申请实施例所提供的一种多人预约调度路径规划方法的获取匹配度变量的流程图。

结合上一实施例,本实施例主要是针对上一实施例中如何获取匹配度变量做的一个具体解释,其他部分与上一实施例大体相同,相同部分可以参考上一实施例,在此不再赘述。

本实施例可以包括:

S301,设置行动者的行动者匹配数值和目的地的目的地匹配数值;

S302,根据行动者匹配数值和目的地匹配数值构造出匹配度变量和匹配度变量的匹配度取值方式。

本实施例主要是根据匹配度限制设置不同的匹配数值,在构造出匹配度变量和变量的取值方式。通过比较行动者匹配数值和目的地的匹配树枝判断是否匹配,进而控制转移概率的大小。

匹配度变量表示为δij,sj作为行动者向目的地j移动的匹配数值,lj为目的地j的匹配数值。

进一步的,匹配度变量的取值方式就可以如下:

其中,sj≥lj表示行动者匹配数值大于或等于目的地匹配数值,sj<lj表示行动者匹配数值小于目的地匹配数值。

在上述步骤的基础上,可以获得改进后的蚁群算法,并利用改进的蚁群算法进行路径规划,具体的方法可以如下:

首先,在开始进行计算时需要设置问题的已知信息和算法参数。

其中,问题已知信息包括:行动者数量、各行动者的匹配数值、所有目的地坐标、各目的地允许被访问的时间窗、各目的地的匹配数值。算法参数包括:蚁群规模、初始信息素量、信息素增量、信息素残余系数、可见度值、转移概率方程式中的信息素权重、转移概率方程式中的可见度权重、内循环最大迭代次数、外循环最大迭代次数。

然后,执行外层循环,包括以下步骤:

步骤w1,选择一名新的行动者;

步骤w2,执行内循环;

步骤w3,若未拜访列表alloweda(未拜访列表)不为空,则返回步骤w1,若未拜访列表alloweda为空,则输出所有行动者的移动路径组,并储存于调度表中,当新的路径组被输出时,取其中的最优者,达到最大外循环次数后,输出最优路径组。

其中,内循环包括以下步骤:

步骤n1,确定当前行动者,输入对应的行动者匹配数值;

步骤n2,在起点处放置蚂蚁;

步骤n3,计算蚂蚁在未拜访列表alloweda中从所在地i向目的地j移动的转移概率

计算公式为:

其中,ωij为上述介绍的时间窗变量,其取值为:

δij为上述介绍的匹配度变量,其取值为:

τij(t)为t时刻路段(i,j)上的信息素浓度;

ηij表示蚂蚁位于点i时对点j的可见度,可见度越高则意味着两点之间的距离越短;

α为信息素权重,决定了蚂蚁在进行选择时信息素浓度τij(t)对其决策的影响程度;

β为可见度权重,决定了蚂蚁在进行选择时可见度ηij对其决策的影响程度;

alloweda为蚂蚁a的未拜访列表,包含所有可作为目的地的目标,其中,a为蚂蚁编号即行动者编号,表示了是第几个行动者;

j∈alloweda表示当目的地j属于未拜访列表中的元素;

other表示当目的地j不属于未拜访列表中的元素;

k∈alloweda表示当目的地k属于未拜访列表中的元素,其中,k表示为目的地;

步骤n4,行动者根据转移概率移动,将目的地j改为行动者的当前所在地,并将j从未拜访列表alloweda中删除;

步骤n5,若j与起点非同一地点,则返回步骤n3,选择下一移动目的地,若j与起点为同一地点,则当前行动者完成一次内循环,根据路径更新各目的地间路段的信息素含量,更新信息素含量的方程为:

τij(t')=ρ·τij(t)+Δτij

该方程表示每次子循环路段(i,j)的信息素更新过程;

其中,ρ为信息素残余系数;τij(t')表示t′时刻路段(i,j)上的信息素浓度;

Δτij表示每次子循环蚂蚁留在路段(i,j)上的信息素增量,计算公式如下:

其中,m为蚂蚁即行动者的数量,a为蚂蚁编号即行动者编号。

步骤n6,若内循环未达最大次数,则将结果路径与上次内循环输出子路径进行比较,择优者保留,重置未拜访列表alloweda,返回步骤n1,若已达最大次数,则输出当前行动者的子路径,进入步骤w3。

本申请实施例提供了一种多人预约调度路径规划方法,可以通过在原有的蚁群算法中根据调度问题的新限制添加了时间窗变量和匹配度变量,得到新的蚁群算法的变体,在计算中再加入新的计算数据就可以在多人预约调度的情况下得到行动者的规划路径,解决了多人预约调度路径规划问题。

下面对本申请实施例提供的一种多人预约调度路径规划装置进行介绍,下文描述的一种多人预约调度路径规划装置与上文描述的一种多人预约调度路径规划方法可相互对应参照。

请参考图4,图4为本申请实施例所提供的一种多人预约调度路径规划装置的结构示意图。

本实施例提供一种多人预约调度路径规划装置,该装置可以包括:

时间窗变量获取模块100,用于根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

匹配度变量获取模块200,用于根据路径规划中的每个行动者与目的地的匹配度构造出匹配度变量;

蚁群算法改进模块300,用于将时间窗变量和匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

路径规划模块400,利用多人预约调度蚁群算法进行路径规划。

可选的,该时间窗变量获取模块100,可以包括:

时间限制设置单元,用于设置路径规划中的目的地的到达时间上限和到达时间下限;

时间窗变量构造单元,用于根据到达时间上限和到达时间下限,并添加行动者移动的消耗时长参数和当前时刻参数构造出时间窗变量和时间窗变量的时间窗取值方式。

可选的,该匹配度变量获取模块200,可以包括:

匹配度设置单元,用于设置行动者的行动者匹配数值和目的地的目的地匹配数值;

匹配度变量构造单元,用于根据行动者匹配数值和目的地匹配数值构造出匹配度变量和匹配度变量的匹配度取值方式。

本申请实施例还提供一种计算机,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时,实现如下的步骤:

根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

根据路径规划中的每个行动者与目的地的匹配度构造出匹配度变量;

将时间窗变量和匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

利用多人预约调度蚁群算法进行路径规划。

本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,实现如下的步骤:

根据路径规划中的目的地允许访问的时间限制构造出时间窗变量;

根据路径规划中的每个行动者与目的地的匹配度构造出匹配度变量;

将时间窗变量和匹配度变量添加到蚁群算法中,得到多人预约调度蚁群算法;

利用多人预约调度蚁群算法进行路径规划。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的一种多人预约调度路径规划方法、多人预约调度路径规划装置、计算机以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

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