CN114625140A - 基于改进时间窗的多智能体网联协同调度规划方法及系统 - Google Patents
基于改进时间窗的多智能体网联协同调度规划方法及系统 Download PDFInfo
- Publication number
- CN114625140A CN114625140A CN202210257839.8A CN202210257839A CN114625140A CN 114625140 A CN114625140 A CN 114625140A CN 202210257839 A CN202210257839 A CN 202210257839A CN 114625140 A CN114625140 A CN 114625140A
- Authority
- CN
- China
- Prior art keywords
- agent
- task
- intelligent
- path
- agents
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000006855 networking Effects 0.000 title claims abstract description 21
- 238000007726 management method Methods 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 11
- 239000003795 chemical substances by application Substances 0.000 claims description 290
- 238000003780 insertion Methods 0.000 claims description 36
- 230000037431 insertion Effects 0.000 claims description 35
- 230000002159 abnormal effect Effects 0.000 claims description 19
- 239000013598 vector Substances 0.000 claims description 14
- 230000007246 mechanism Effects 0.000 claims description 11
- 230000004888 barrier function Effects 0.000 claims description 3
- 238000013459 approach Methods 0.000 claims description 2
- 238000012966 insertion method Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0217—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
Abstract
本发明公布了一种基于改进时间窗的多智能体网联协同调度规划方法及系统,通过动态添加任务、动态刷新任务优先级和最优分配任务,并求解两点间无环路的所有可行驶路径和采用改进时间窗算法进行冲突的协同处理,实现各智能体协同避碰;且对各智能体的停车点及临时停车点进行管理和对智能体在运行过程中遇到障碍物进行重规划;系统包括:任务管理模块、路径规划模块、协同避碰模块、智能体管理模块、重规划模块。本发明实现动态监控和调整智能体的运行情况,适用于任意结构的地图,可较好地应对智能体运行情况不理想的问题,具有较强的适应性和鲁棒性。
Description
技术领域
本发明属于多智能体调度及路径规划技术领域,具体涉及一种基于改进时间窗算法的多智能体网联协同调度规划方法及其系统,可用于智慧物流场景下对多智能体的协同调度及规划,通过采用改进时间窗算法规划智能体的运行路径及行驶时间,协调智能体之间的冲突,从而实现多智能体高效地并行工作。
背景技术
随着科技的发展,智能物流已经成为一种必然趋势,其主要任务是依靠技术手段来降低物流运输过程的成本,将人工从繁杂的分拣及运输工作中解放出来。在一个智慧物流系统中,通常同时运行着多台智能体,如何保证多智能体无冲突地高效地并行运行是保障智慧物流系统平稳运行的关键之一。
多台智能体之间的冲突是由智能体之间的资源竞争导致的,如两台智能体同时占用一段路径资源,因此,对地图资源进行合理的调度、对智能体的行驶动作进行合理的规划是必要的。目前现有技术主要采用两种不同架构的调度及规划方案,即中心式架构和分布式架构。其中,分布式架构目前应用较少,虽然它具有更强的灵活性与可扩展性,但无法做法对智能体的集中控制。目前广泛应用的调度及规划方法大多都采用中心式架构,它具有便于控制,易于获得全局最优解等优势,但是,现有采用中心式架构对智能体进行调度及规划的方法的灵活性较受限,可靠性较低。尤其是采用传统时间窗算法的中心式架构调度及规划方法,无法适用于任意结构的地图,也未充分考虑运行过程中可能出现的时间消耗,适应性和鲁棒性较差。
发明内容
本发明提供了一种基于改进时间窗算法的多智能体网联协同调度规划方法及其系统,该方法采用中心式架构,对调度区域地图中的每段路段维护一个时间窗序列,时间窗序列中的每个元素对应一台智能体占用该段路段的一段时间,通过控制中心对调度时间和调度区域空间两个维度上的合理规划,实现区域内各智能体无冲突地并行运行。本发明相较于现有传统的中心式架构调度及规划方法更加灵活可靠,具有较强的适应性和鲁棒性。
本发明中,智能体(即执行运输任务的智能机器人实体)需定时向控制中心汇报位置、状态等信息,控制中心可以与场景中的各智能体通信,为其下发行驶信息。本发明方法及实现系统主要包括五个部分:任务管理模块、路径规划模块、协同避碰模块、智能体管理模块、重规划策略模块。任务管理部分实现动态添加任务、任务优先级的动态刷新和任务的最优分配;路径规划部分基于dijkstra算法求解两点间无环路的所有可行驶路径;协同避碰部分对路径规划部分求得的路径采用改进时间窗算法进行冲突的协同处理,实现各智能体协同避碰;智能体管理部分对各智能体的停车点以及执行任务过程中的临时停车点进行管理;重规划策略部分完成对智能体在运行过程中遇到障碍物的情况的处理。
本发明提供的基于改进时间窗算法的多智能体网联协同调度规划方法包括如下步骤:
步骤1对智能体运行场景进行建模,获得场景区域的拓扑地图,所得拓扑地图需保持节点与路段相对位置关系正确,智能体在场景区域中沿路段行驶。拓扑地图中的节点包括普通节点和各智能体的停车点;拓扑地图中两相邻节点的连线构成一段路段,若干路段相连接即构成一条路径。
为地图中的每一段路段(两相邻节点连接所成的线段)维护一个有序的向量(时间窗向量),时间窗向量中存储各智能体占用各路段的时间段。
步骤2将各智能体的停车点设置为拓扑地图中的节点,用于系统中无任务时停放智能体或为智能体充电。
步骤3添加以场景区域中任意位置为起点和终点的运输任务。智能体完成运输任务所行驶经过的节点连线即构成一条路径。
步骤4进行任务分配,将优先级最高的任务采用最优分配策略分配给一台智能体执行。
此步骤实现任务优先级的动态刷新和任务的最优分配。由控制中心维护一个任务列表和一个智能体列表,任务列表中的每个元素对应一个运输任务,运输任务具有任务起点、任务终点、任务状态和任务优先级等属性。添加的任务都将加入到此列表中,并且定期刷新列表中任务的优先级,按照优先级顺序将任务分配给智能体执行。智能体列表中每个元素对应一个在场景区域中执行运输任务的智能体,智能体具有状态、位置等属性。智能体可以在任意位置向控制中心发送注册消息,控制中心收到智能体的注册消息后将该智能体加入到智能体列表中,之后智能体需定期向控制中心上报自己的位置、状态以及所检测到的障碍物的位置等信息。
步骤5求解得到地图中两点间无环路的所有可行驶路径。
步骤6对步骤5中求得的路径,采用改进时间窗算法进行冲突的协同处理,实现当前智能体与场景中的其它智能体的协同避碰,并且从所有可行驶路径中选取能最早完成任务的一条路径作为执行路径。
采用改进时间窗算法对路径进行时间窗插入,通过时间窗插入方法获得智能体执行该条路径任务过程的释放路径上最后一段路段的时间,即智能体采用该路径时完成行驶任务的时间。对所有可行驶路径进行时间窗插入之后,从中选取释放最后一段路段时间最早的路径作为智能体的行驶路径,智能体根据相应的行驶路径行驶,即可实现多台智能体无冲突地运行。
步骤7当遇到障碍物无法继续行驶时,采用重规划策略重新规划路径;
在多智能体网联协同调度规划过程中,对于障碍物的应对策略采用重规划策略——当智能体遇到障碍物状态异常时,根据智能体向控制中心上报的信息获取该智能体的位置,该智能体和路径中包含了该智能体异常时所处路段的所有智能体均重新规划当前智能体所处位置到任务终点的路径。
步骤8对完成任务后的智能体进行管理,以防与其它智能体冲突。
通过以上步骤和策略,实现多台智能体在场景中无冲突地并行执行任务。
具体实施时,本发明还实现了一种基于改进时间窗算法的多智能体网联协同调度规划系统,包括五个部分:任务管理模块、路径规划模块、协同避碰模块、智能体管理模块、重规划模块;其中,
任务管理模块用于任务分配,将优先级最高的任务采用最优分配策略分配给一台智能体执行;
路径规划模块用于通过基于dijkstra算法求解得到两点间无环路的所有可行驶路径;
协同避碰模块用于实现当前智能体与场景中的其它智能体的协同避碰,采用改进时间窗算法进行冲突的协同处理,并从所有可行驶路径中选取能最早完成任务的一条路径作为执行路径;
智能体管理模块用于设置各智能体的停车点,系统中无任务时停放智能体或为智能体充电;以及对完成任务后的智能体进行管理,以防与其它智能体冲突;
重规划模块用于当智能体遇到障碍物状态异常时,根据智能体向控制中心上报的信息获取该智能体的位置,该智能体和路径中包含了该智能体异常时所处路段的所有智能体均重新规划当前智能体所处位置到任务终点的路径。
与现有技术相比,本发明的有益效果:
本发明提供一种基于改进时间窗算法的多智能体网联协同调度规划方法,通过控制中心的统一规划与控制,实现多智能体间协同避免冲突,实现多智能体高效地并行地执行运输任务。本发明提供的方法可以实现动态监控和调整智能体的运行情况,适用于任意结构的地图,可以较好地应对智能体运行情况不理想的问题,具有较强的适应性和鲁棒性。
本发明提供的多智能体网联协同调度规划方法具有以下优点:
1)采用在线求解策略,结合重规划策略,实现动态监控和调整智能体的运行情况,实现在智能体遇到突发状况时能够迅速从异常状况中恢复,继续执行任务;
2)采用协同避碰策略,通过协调各智能体的行驶路径和行驶时间保障各智能体无冲突运行,使应用该方法的多智能体调度系统具有较高的运行效率。
3)引入了节点时间窗结构,打破了智能体在节点处转弯角度的限制,使本方法可以适用于任意结构的地图;
4)充分考虑了通信延迟等在智能体运行过程中可能出现的时间消耗,且采用为智能体下发预计的到达时间,由智能体自主实现速度控制的循迹行驶方式,使本方法可以较好地应对智能体运行情况不理想的问题,提高了适应性和鲁棒性。
附图说明
图1是本发明任务管理部分任务分配的流程框图。
图2是dijkstra算法及本发明路径规划部分基于dijkstra算法求解两点间无环路的所有可行驶路径的流程框图。
图3是本发明重规划策略部分示例的智能体位置、路径及障碍物位置示意图;
其中,0~25表示路径中的节点。
图4是本发明协同避碰部分节点保护机制示例示意图。
图5是本发明协同避碰部分时间窗的结构示意图。
图6是本发明协同避碰部分时间窗插入操作的流程框图。
图7是本发明协同避碰部分示例的时间窗插入操作过程示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明提供一种基于改进时间窗算法的多智能体网联协同调度规划方法,实现多智能体无冲突地并行执行运输任务。本发明方法主要包括五个部分:任务管理、路径规划、协同避碰、智能体管理、重规划策略。其中协同避碰部分采用改进时间窗算法,引入了节点时间窗的结构,使本方法可以适用于任意结构的地图,具有较强的适用性。本发明方法充分考虑了通信延迟等在智能体运行过程中可能出现的时间消耗,配合智能体端根据预计到达时间自主实现速度控制的循迹行驶方式,具有较强的鲁棒性。
任务管理部分实现动态添加任务、任务优先级的动态刷新和任务的最优分配。由控制中心维护一个任务列表,任务列表中的每个元素对应一个运输任务,运输任务具有任务起点、任务终点、任务状态和任务优先级等属性。添加的任务都将加入到此列表中,并且定期刷新列表中任务的优先级,按照优先级顺序将任务分配给智能体执行,具体实施时的分配策略参考图1所示。
路径规划部分基于dijkstra算法求解两点间无环路的所有可行驶路径,算法流程参考图2所示。
协同避碰部分对路径规划部分中求得的路径采用改进时间窗算法进行冲突的协同处理,实现当前智能体与场景中的其它智能体的协同避碰,并且从所有可行驶路径中选取能最早完成任务的一条路径作为执行路径。
智能体管理部分对各智能体的停车点以及执行任务过程中的临时停车点进行管理。由控制中心维护一个智能体列表,智能体列表中每个元素对应一个在场景区域中执行运输任务的智能体,智能体具有状态、位置等属性。智能体可以在任意位置向控制中心发送注册消息,控制中心收到智能体的注册消息后将该智能体加入到智能体列表中,之后智能体需定期向控制中心上报自己的位置、状态以及所检测到的障碍物的位置等信息。
重规划策略部分完成对智能体在运行过程中遇到障碍物的情况的处理。当一台智能体在运行过程中遇到障碍物状态异常时,控制中心根据智能体的位置和地图上节点、路径的信息计算当前智能体处在哪条路段上,将该路段置为异常,然后检查其它正在运行的智能体的路径中是否包含了该路段,若包含,则将该智能体的状态也置为异常。之后,控制中心对状态异常的智能体都重新规划到各自终点的路径。
为了便于理解,以图3所示情况为例,智能体a的行驶路径为:10->11->12->13->20->19->24,智能体b在行驶过程中遇到了障碍物,智能体b状态异常,此时控制中心根据智能体b的位置和地图中节点、路径的信息计算出智能体b正处在节点19与节点20之间的路段上,该路段被置为异常。通过检查其它智能体正在行驶的路径,发现智能体a的运行路径中包含了节点19与节点20之间的路段,则将智能体a状态也置为异常。而后控制中心为状态异常的智能体重新规划到各自任务终点的路径,例如,为智能体a重新规划出的一条可能的路径为:10->11->12->13->20->25->24。
本方法的具体实施包括如下步骤:
步骤1对智能体运行场景进行建模,获得场景的拓扑地图。
步骤2智能体管理部分——设置各智能体的停车点,用于系统中无任务时停放智能体或为智能体充电。
各智能体的停车点用于在系统中无任务时停放智能体,或在智能体电量不足时为智能体充电。为了防止智能体之间的冲突,设置某点为智能体的停车点后,屏蔽该点所连接的路段,即除了以该点为停车点的智能体可以返回该点,其它智能体运行时均不得经过该点。
步骤3添加运输任务。
添加以地图中任意两点为起点、终点的运输任务,并输入该任务的有效时间td,即期望完成时间,并根据动态刷新任务的优先级,其中t为当前时刻,P0为任务的初始优先级(初始时P0=∞,即优先级最低),P(t)为该任务t时刻的优先级,是智能体执行该任务时释放其路径上最后一段路段的时间。
步骤4任务管理部分——任务分配,参考图1所示,将当前任务列表中优先级最高的任务采用以下分配策略(最优分配策略)分配给一台智能体。
1)若当前有空闲的智能体正处在该任务的起点,则分配给该智能体;
2)否则若有空闲的智能体,则将该任务分配给距离任务起点最近的空闲的智能体;
3)若当前没有空闲的智能体,则该任务暂缓分配。
步骤5路径规划部分——基于dijkstra算法获得智能体执行任务的无环路的所有可行驶路径,图2是路径规划部分的算法流程图。
基础的dijkstra算法的执行步骤如下:
1)获取起点s和终点e;
2)定义两个集合:S和U。S用来记录地图中所有已求出最短路径的节点,U用来记录还未求出最短路径的节点。定义两个向量:D和P,向量D中以节点编号顺序存储起点s到地图中其它节点的最短距离,向量P中以节点编号顺序存储起点s到地图中其它某一节点z的最短路由中节点z的上一节点。初始时,S中只有起点s,U中包含除起点s之外的地图中所有节点;D中各元素的值是起点s到地图中其它各节点的距离(若U中某节点v与起点s不相邻,则D中对应的元素值为∞);
3)从U中选出距离起点s最近的节点k,并将节点k加入到S中,同时,从U中移除节点k;
4)更新U中各个节点到起点s的距离(考虑以节点k为中间点起点s到U中某个节点v的距离可能减小),同时更新向量D和向量P;
5)重复步骤3)和步骤4),直到遍历完地图中所有节点;
6)从终点e开始,反向检索向量P,获取起点s到终点e的最短路径。
本发明基于dijkstra算法获得智能体执行任务时两点间所有无环路的可行驶路径的步骤如下:
1)采用基础的dijkstra算法求出一条两点间的最短路径:s→k1→k2→…→kn→e;
2)令k0=s,kn+1=e,对于路径上除终点e外的每一个点km(m=0,1,2…,n),遍历km所相邻的每一个节点vq(q=1,2,…,r),若vq≠km+1,以vq为起点,以e为终点,采用基础的dijkstra算法求出vq与e之间的最短路径:vq→n1→n2→…→np→e,则得到另一条s与e之间的路径:k0→…→km→vq→…→e,将其加入路径列表。
通过上述过程,即可求得s与e之间所有的可行驶路径。使用DFS(深度优先遍历)或BFS(广度优先遍历)算法也可获得智能体执行任务时两点间所有无环路的可行驶路径。
步骤6协同避碰部分——对步骤5中求得的路径采用改进的时间窗算法进行冲突的协同处理,实现当前智能体与场景中的其它智能体的协同避碰,并且从所有可行驶路径中选取能最早完成任务的一条路径作为执行路径。
时间窗算法的基本思想为:使场景中的智能体每时每刻都占用地图中的某一段路段,通过合理的规划,避免多台智能体同时占用同一段路段,以达到避免冲突的效果。
控制中心为地图中的每一段路段(两相邻节点连接所成的线段)维护一个有序的向量(时间窗向量),时间窗向量中存储各智能体占用各路段的时间段。
其中每个时间段都具有图5所示的冲突避免部分时间窗的结构。
其中,t0为智能体到达路段的前端节点的时间,t1为智能体离开路段的前端节点,驶入路段段的时间,t2为智能体到达路段的后端节点(也即下一段路段的前端节点)的时间,t3为智能体离开当前路段的后端节点(驶入下一段路段)的时间。若智能体在路段的前(后)端节点处无需转弯,则t0=t1(t2=t3)。
时间窗插入的过程参考图6所示。
对于由路径规划部分获得每一条路径,执行如下操作:
对于每条路径上的每一段路段am(m=1,2,…,n):
初始化列表Xm为空列表;
1)以最短长度的时间窗(对应智能体以最大速度行驶)进行插入。寻找满足以下四个条件的插入位置:
a)在路段am的时间窗向量中,该插入位置的后一个时间段的起始时间与该插入位置的前一个时间段的终止时间之差足以容纳此最短的时间窗长度。
b)若m≠1,进入此段路段的时间应在智能体释放其路径上的上一段路段的时间之后。
c)该插入位置的索引不在列表Xm中。
d)该插入位置的索引最小。
2)若m≠1,判断智能体释放其路径上的上一段路段的时间与进入此段路段的时间是否相等。若不相等,则延长上一段路段的释放时间,使其等于此段路段的进入时间。
3)检查时间窗之间是否存在重叠。若不重叠,插入成功,执行节点保护机制,而后继续对下一段路段进行操作。若重叠,将上一段路段的插入位置加入到列表Xm-1中,返回路径上的上一段路段,返回到步骤1)。
节点保护机制:若多台智能体同时接近同一节点,使它们到达节点的时间相差节点保护时间ts,ts需根据智能体的体积以及智能体的最大行驶速度合理设定。
以图4所示情况为例,如图4中(1)所示,智能体a已在运行中,它在节点4附近行驶路径为3->4->0,智能体b位于节点1,它将执行一个路径为1->4->2的任务,智能体a与智能体b虽无重合行驶路径,但它们共享节点4。此时节点3与节点4之间的a0路段和节点1与节点4之间的a1路段的时间窗情况如图4中(2)所示,其中智能体a所占用的时间窗的起始时间为t04,终止时间为t05,那么在智能体b在a1路段上插入时间窗时,应调节其释放a1路段的时间,也即离开节点4的时间与t05至少相差出ts时间,最终的时间窗插入结果如图4中(3)所示。
对一条路径进行时间窗插入操作成功后,可以获得智能体执行该条路径任务过程的释放路径上最后一段路段的时间,也即智能体采用该路径时完成行驶任务的时间。对所有可行驶路径进行时间窗插入操作成功后,从中选取释放最后一段路段时间最早的路径作为智能体的行驶路径,而后为智能体下发路径上的节点信息和预计的智能体到达各个节点的时间信息,由智能体循迹行驶,实现多台智能体无冲突地运行。
为了帮助理解,以对路径a4→a2→a1→a0→a3进行时间窗插入为例说明时间窗插入过程,设此时路径上各路段的时间窗情况如图7中(1);
①初始化列表X0,对a4路段以最短的时间窗长度进行插入,获得插入位置的索引i0=0,进入a4路段的时间t42和释放a4路段的时间t43,检测时间窗之间无重叠,执行节点保护机制;
②初始化列表X1,对a2路段以最短的时间窗长度进行插入,获得插入位置的索引i1=1,进入a2路段的时间t22和释放a2路段的时间t23;令t43=t22,检测时间窗之间无重叠,执行节点保护机制;
③初始化列表X2,对a1路段以最短的时间窗长度进行插入,获得插入位置的索引i2=1,进入a1路段的时间t12和释放a1路段的时间t13;令t23=t12,检测时间窗之间无重叠,执行节点保护机制;
④初始化列表X3,对a0路段以最短的时间窗长度进行插入,获得插入位置的索引i3=1,进入a0路段的时间t04和释放a0路段的时间t05;令t13=t04,检测时间窗之间无重叠,执行节点保护机制;
⑤初始化列表X4,对a3路段以最短的时间窗长度进行插入,获得插入位置的索引i4=2,进入a3路段的时间t34和释放a0路段的时间t35;令t05=t34,参考图7中(2)所示,检测到a0路段的时间窗之间存在重叠;
⑥将a0路段的插入位置i3加入到列表x3中,并重新插入a0路段的时间窗,获得插入位置的索引i3=2,进入a0路段的时间t′04和释放a0路段的时间t′05;令t13=t′04,检测时间窗之间无重叠,执行节点保护机制;
⑦重新插入a3路段的时间窗,获得插入位置的索引i4=2,进入a0路段的时间t′34和释放a0路段的时间t′35;令t′05=t′34,检测时间窗之间无重叠,执行节点保护机制,时间窗插入过程结束,最终的插入结果参考图7中(3)所示。
步骤7当遇到障碍物无法继续行驶时,采用重规划策略重新规划路径;
当智能体遇到障碍物状态异常时,根据智能体向控制中心上报的信息获取该智能体的位置,该智能体和路径中包含了该智能体异常时所处路段的所有智能体均重新规划当前智能体所处位置到任务终点的路径。
步骤8智能体管理部分——对完成任务后的智能体进行管理,以防其与其它智能体冲突;
智能体到达任务终点,完成任务后,向任务终点所连接的路段上插入长为tw的时间窗,以防止其它智能体行驶进入这些路段,与当前智能体发生冲突。智能体在任务终点上停止等待新的任务,最长等待tw时间,若等待期间有新的任务分配,则智能体继续执行新的任务,若等待长达tw时间仍没有新的任务分配,则为智能体下发返回停车点的任务。
需要注意的是,公布实施例的目的在于帮助进一步理解本发明,但是本领域的技术人员可以理解:在不脱离本发明及所附权利要求的精神和范围内,各种替换和修改都是可能的。因此,本发明不应局限于实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
Claims (10)
1.一种基于改进时间窗的多智能体网联协同调度规划方法,通过动态添加任务、动态刷新任务优先级和最优分配任务,并求解两点间无环路的所有可行驶路径和采用改进时间窗算法进行冲突的协同处理,实现各智能体协同避碰;且对各智能体的停车点及临时停车点进行管理和对智能体在运行过程中遇到障碍物进行重规划;包括如下步骤:
步骤1)对智能体运行场景进行建模,获得场景区域的拓扑地图;
所得拓扑地图中的节点可包括普通节点和各智能体的停车点;
两相邻节点的连线构成一段路段,多个路段相连接构成一条路径;节点与路段相对位置关系正确;智能体在场景区域中沿拓扑地图中的路段行驶;拓扑地图中的每一段路段对应一个有序的时间窗向量;时间窗向量中存储各智能体占用各路段的时间段;
步骤2)在拓扑地图中设置某些节点为各智能体的停车点,用于系统中无任务时停放智能体或为智能体充电;
步骤3)动态添加以场景区域中任意位置为起点和终点的运输任务;智能体完成运输任务所行驶经过的节点连线即构成一条运输路径;
步骤4)动态刷新任务优先级和对任务进行最优分配,将优先级最高的任务采用最优分配策略分配给一台智能体执行;包括:
维护一个任务列表和一个智能体列表;
任务列表中的每个元素对应一个运输任务,运输任务的属性包括任务起点、任务终点、任务状态和任务优先级;将添加的任务均加入到任务列表中,并定期刷新列表中任务的优先级,按照优先级顺序将任务分配给智能体执行;
智能体列表中每个元素对应一个在场景区域中执行运输任务的智能体,智能体的属性包括状态和位置;智能体可在任意位置注册并加入到智能体列表中,之后智能体定期上报位置、状态以及所检测到的障碍物的位置信息;
步骤5)求解得到地图中两点间无环路的所有可行驶路径;
步骤6)对步骤5中求得的路径,采用改进时间窗算法进行冲突的协同处理,使得当前智能体与场景中其它智能体实现协同避碰,并从所有可行驶路径中选取能最早完成任务的一条路径作为执行路径;包括:
61)采用改进时间窗算法对路径进行时间窗插入,通过时间窗插入方法获得智能体执行该条路径任务过程的释放路径上最后一段路段的时间,即智能体采用该路径时完成行驶任务的时间;对于每条路径上的每一段路段am,m=1,2,…,n,执行如下操作:
初始化列表Xm为空列表;
611)以最短长度的时间窗进行插入,最短长度的时间窗对应智能体以最大速度行驶;插入位置需满足以下条件:
a)在路段am的时间窗向量中,该插入位置的后一个时间段的起始时间与该插入位置的前一个时间段的终止时间之差容纳此最短的时间窗长度;
b)若m≠1,进入此段路段的时间应在智能体释放其路径上的上一段路段的时间之后;
c)该插入位置的索引不在列表Xm中;
d)该插入位置的索引最小;
612)若m≠1,判断智能体释放其路径上的上一段路段的时间与进入此段路段的时间是否相等;若不相等,则延长上一段路段的释放时间,使其等于此段路段的进入时间;
613)检查时间窗之间是否存在重叠;若不重叠,插入成功,执行节点保护机制,而后继续对下一段路段进行操作;若重叠,将上一段路段的插入位置加入到列表Xm-1中,返回路径上的上一段路段,返回到步骤1);所述节点保护机制为:若多台智能体同时接近同一节点,使它们到达节点的时间相差为设定的节点保护时间ts;
62)对所有可行驶路径进行时间窗插入之后,从中选取释放最后一段路段时间最早的路径作为智能体的行驶路径;
63)智能体根据相应的行驶路径行驶,即可实现多台智能体无冲突地运行;
步骤7)当遇到障碍物无法继续行驶时,采用重规划策略重新规划路径;
步骤8)对完成任务后的智能体进行管理,以防与其它智能体冲突;
通过以上步骤,实现基于改进时间窗的多智能体网联协同调度规划,使得多台智能体在场景中无冲突地并行执行任务。
2.如权利要求1所述基于改进时间窗的多智能体网联协同调度规划方法,其特征是,步骤5)具体是基于dijkstra算法,或使用深度优先遍历DFS或广度优先遍历BFS算法求解两点间无环路的所有可行驶路径,获得智能体执行任务时两点间所有无环路的可行驶路径。
3.如权利要求2所述基于改进时间窗的多智能体网联协同调度规划方法,其特征是,基于dijkstra算法求解两点间无环路的所有可行驶路径具体步骤如下:
1)采用基础dijkstra算法求出一条两点间的最短路径:s→k1→k2→…→kn→e;
2)令k0=s,kn+1=e,对于路径上除终点e外的每一个点km,m=0,1,2…,n,遍历km所相邻的每一个节点vq,q=1,2,…,r;若vq≠km+1,以vq为起点,以e为终点,采用基础dijkstra算法求出vq与e之间的最短路径:vq→n1→n2→…→np→e,则得到另一条s与e之间的路径:k0→…→km→vq→…→e,将其加入路径列表;
通过上述过程,即可求得s与e之间所有的可行驶路径。
5.如权利要求1所述基于改进时间窗的多智能体网联协同调度规划方法,其特征是,采用最优分配策略将优先级最高的任务分配给一台智能体执行,具体是:
1)若当前有空闲的智能体正处在该任务的起点,则分配给该智能体;
2)否则若有空闲的智能体,则将该任务分配给距离任务起点最近的空闲的智能体;
3)若当前没有空闲的智能体,则该任务暂缓分配。
6.如权利要求1所述基于改进时间窗的多智能体网联协同调度规划方法,其特征是,步骤6)所述执行路径具体是选取最早完成任务的一条路径作为执行路径;步骤613)中,所述节点保护时间ts具体是根据智能体的体积以及智能体的最大行驶速度设定。
7.如权利要求1所述基于改进时间窗的多智能体网联协同调度规划方法,其特征是,步骤7)采用重规划策略重新规划路径,具体是:当智能体遇到障碍物状态异常时,根据智能体上报的信息获取该智能体的位置,对于该智能体和路径中包含该智能体异常时所处路段的所有智能体,均对当前智能体所处位置到任务终点的路径进行重新规划。
8.如权利要求1所述基于改进时间窗的多智能体网联协同调度规划方法,其特征是,步骤8)对完成任务后的智能体进行管理,包括:
智能体到达任务终点,完成任务后,向任务终点所连接的路段上插入长为tw的时间窗,以防止其它智能体行驶进入这些路段,与当前智能体发生冲突;
智能体在任务终点上停止等待新的任务,最长等待tw时间;
若等待期间有新的任务分配,则智能体继续执行新的任务;若等待长达tw时间仍没有新的任务分配,则为智能体下发返回停车点的任务。
9.一种基于改进时间窗算法的多智能体网联协同调度规划系统,利用权利要求1~8所述基于改进时间窗的多智能体网联协同调度规划方法实现;所述多智能体网联协同调度规划系统包括:任务管理模块、路径规划模块、协同避碰模块、智能体管理模块、重规划模块,其中:
所述任务管理模块用于任务分配,将优先级最高的任务采用最优分配策略分配给一台智能体执行;
所述路径规划模块用于求解得到两点间无环路的所有可行驶路径;
所述协同避碰模块用于实现当前智能体与场景中的其它智能体的协同避碰,采用改进时间窗算法进行冲突的协同处理,并从所有可行驶路径中选取能最早完成任务的一条路径作为执行路径;
所述智能体管理模块用于设置各智能体的停车点,系统中无任务时停放智能体或为智能体充电;以及对完成任务后的智能体进行管理,以防与其它智能体冲突;
所述重规划模块用于当智能体遇到障碍物状态异常时,根据智能体向控制中心上报的信息获取该智能体的位置,该智能体和路径中包含该智能体异常时所处路段的所有智能体均重新规划当前智能体所处位置到任务终点的路径。
10.如权利要求9所述基于改进时间窗算法的多智能体网联协同调度规划系统,其特征是,所述路径规划模块具体是采用基于dijkstra算法求解得到两点间无环路的所有可行驶路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210257839.8A CN114625140A (zh) | 2022-03-14 | 2022-03-14 | 基于改进时间窗的多智能体网联协同调度规划方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210257839.8A CN114625140A (zh) | 2022-03-14 | 2022-03-14 | 基于改进时间窗的多智能体网联协同调度规划方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114625140A true CN114625140A (zh) | 2022-06-14 |
Family
ID=81902270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210257839.8A Pending CN114625140A (zh) | 2022-03-14 | 2022-03-14 | 基于改进时间窗的多智能体网联协同调度规划方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114625140A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116483086A (zh) * | 2023-04-26 | 2023-07-25 | 西安电子科技大学广州研究院 | 一种边冲突和点冲突解耦的长期多智能体路径规划方法 |
WO2024016457A1 (zh) * | 2022-07-18 | 2024-01-25 | 北京大学 | 基于自主绕障的异构型多智能体网联协同调度规划方法 |
-
2022
- 2022-03-14 CN CN202210257839.8A patent/CN114625140A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024016457A1 (zh) * | 2022-07-18 | 2024-01-25 | 北京大学 | 基于自主绕障的异构型多智能体网联协同调度规划方法 |
CN116483086A (zh) * | 2023-04-26 | 2023-07-25 | 西安电子科技大学广州研究院 | 一种边冲突和点冲突解耦的长期多智能体路径规划方法 |
CN116483086B (zh) * | 2023-04-26 | 2024-03-26 | 西安电子科技大学广州研究院 | 一种边冲突和点冲突解耦的长期多智能体路径规划方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114625140A (zh) | 基于改进时间窗的多智能体网联协同调度规划方法及系统 | |
CN109115226B (zh) | 基于跳点搜索的多机器人冲突避免的路径规划方法 | |
CN109945882B (zh) | 一种无人驾驶车辆路径规划与控制系统及方法 | |
CN106556406B (zh) | 多agv调度方法 | |
CN110989570B (zh) | 一种多agv防碰撞协同路径规划方法 | |
CN105354648B (zh) | Agv调度管理的建模及其优化方法 | |
CN107167154B (zh) | 一种基于时间代价函数的时间窗路径规划冲突解决方法 | |
CN106251016B (zh) | 一种基于动态时间窗的泊车系统路径规划方法 | |
CN109991977A (zh) | 机器人的路径规划方法及装置 | |
CN110174111A (zh) | 基于时间窗的任务分段式的多agv路径规划算法 | |
CN111596658A (zh) | 一种多agv无碰撞运行的路径规划方法及调度系统 | |
CN111633655B (zh) | 一种分布式自主移动机器人交通调度方法 | |
CN110471418B (zh) | 智能停车场中的agv调度方法 | |
CN110515380B (zh) | 基于转弯权重约束的最短路径规划方法 | |
CN113870602B (zh) | 一种多agv泊车调度的方法和系统 | |
CN114077254B (zh) | 一种agv路径冲突处理方法 | |
CN110108290B (zh) | 一种基于遗传算法的多智能车避撞路径规划的方法 | |
CN111932000A (zh) | 一种应用于大型物流系统的多agv调度方法 | |
CN114489062A (zh) | 面向车间物流的多自动导引车分布式动态路径规划方法 | |
CN109934388A (zh) | 一种用于智能拣选优化系统 | |
CN103344248A (zh) | 一种车辆导航系统的最佳路径计算方法 | |
CN115016506A (zh) | 基于自主绕障的异构型多智能体网联协同调度规划方法 | |
CN113352926A (zh) | 充电处理方法及装置、调度系统 | |
CN115116220A (zh) | 一种用于矿区装卸场景的无人驾驶多车协同控制方法 | |
WO2021189882A1 (zh) | 车辆的调度方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |