CN110264062B - 分布式多agv动态任务分配及其路径规划方法与系统 - Google Patents
分布式多agv动态任务分配及其路径规划方法与系统 Download PDFInfo
- Publication number
- CN110264062B CN110264062B CN201910514033.0A CN201910514033A CN110264062B CN 110264062 B CN110264062 B CN 110264062B CN 201910514033 A CN201910514033 A CN 201910514033A CN 110264062 B CN110264062 B CN 110264062B
- Authority
- CN
- China
- Prior art keywords
- task
- agv
- module
- tasks
- bidding
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0834—Choice of carriers
- G06Q10/08345—Pricing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/08—Auctions
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/60—Electric or hybrid propulsion means for production processes
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Warehouses Or Storage Devices (AREA)
Abstract
本发明提出了一种分布式多AGV动态任务分配及其路径规划方法与系统,该系统主要包括上位任务管理主机和多个同构的AGV,所述上位任务管理主机负责任务的管理与分配,主要由任务信息管理模块、竞价任务分配模块和主机无线通讯模块组成;所述AGV负责各自的任务路径规划和执行,主要由AGV无线通讯模块、AGV任务管理模块、AGV竞价模块、单任务路径规划模块、任务排序模块和任务执行模块组成。本发明能实现多AGV个体之间的分散管理,从而解决动态任务下路径规划计算量大、效率低的问题,提高AGV执行所有任务的效率,降低仓库的管理成本、提高运行效率,具有较好的应用前景。
Description
技术领域
本发明涉及一种分布式多AGV动态任务分配及其路径规划方法与系统,属于多AGV调度优化技术领域。
背景技术
随着人工成本的日益增长,在仓储业、制造业等领域,越来越多的企业使用自动导引车(Automated Guided Vehicle,AGV)代替高昂的人力成本,不但可以降低企业运营成本,还能提高生产效率。由于AGV具有自动化程度高、可靠性好、适应性强等特点,使其在自动化仓储领域得到广泛应用。例如,在无人仓库中执行分拣操作时,调度中心随机接收新任务(每个任务需要将货物从给定的起始位置运输到目的地位置),然后将这些任务合理分配给多个同构的AGV,AGV在接收到任务之后采用何种任务执行顺序决定了整个仓储AGV系统的运行效率。
目前,常见的多AGV控制系统可分为两类:集中式控制系统和分布式控制系统。在集中式控制系统中,上位机负责为所有AGV分配任务、规划路径和调解冲突;下位机即AGV的作用是按照上位机规划路线执行任务,采用这种方式对上位机的计算性能要求很高,而且一旦发生故障将面临交通阻塞、系统崩溃等问题,频繁的路线调整和通讯会影响整个系统的运行效率。在传统的分布式控制系统中,上位机负责任务分配、路径协调,每个AGV系统都存储着环境地图,在AGV收到分配的任务之后自主规划路径、执行任务,但是这种方式很大程度上依赖各个AGV之间的相互通信,为了避免路径死锁,就必须对无线通信系统的实时性和可靠性提出更高的要求。虽然单个AGV的路径规划计算量很小,但是冲突调解的计算量很大,对整个系统的响应速度影响较大。总之,在传统的分布式AGV控制系统中,上位机负责任务分配和路径协调,AGV根据自身优先级先后规划路径、执行任务,并将规划结果广播给其它AGV,但是这种方式很大程度上依赖各个AGV之间的相互通信,存在通信要求高、冲突调解的计算量大等问题。
经检索发现,公开号为CN109765896A的中国专利公开了一种基于智能停车场多AGV的动态路径规划方法,该方法是用于解决多个AGV在同一环境移动时的冲突,首先建立多个AGV可能冲突的模型,然后根据各个AGV的优先级重新规划路径。本发明在所提出的分布式多AGV系统中,针对以往的AGV搬运货物采用的策略效率低的情况下,提出了一种能提升AGV运行效率的方法,优化各个AGV的移动路径,并不考虑多个AGV冲突的情况。
发明内容
本发明所要解决的技术问题是,克服现有技术存在的不足而提供一种分布式多AGV动态任务分配及其路径规划方法与系统,能实现多AGV个体之间的分散管理,从而解决动态任务下路径规划计算量大、效率低的问题。
本发明提供一种分布式多AGV动态任务分配及其路径规划方法,其特征在于,该方法的执行包含以下步骤:
步骤1、初始化地图信息,地图信息包括AGV的位置信息、待分配任务列表(AllTaskList)以及AGV的待执行任务列表(AGVTaskList)等;
步骤2、上位任务管理主机的任务信息管理模块接收调度中心的任务订单信息并将其存储在待分配任务列表(AllTaskList)中;
步骤3、上位任务管理主机的竞价任务分配模块向多个同构的AGV发布任务竞价信息,并接收各个AGV的报价,然后确定竞价结果以决定任务的归属,按竞价结果将任务分配给AGV;
步骤4、竞价任务分配模块给出竞价结果后,由各个AGV的AGV竞价模块判断是否竞价成功;若所有AGV竞价失败,则将该任务返回到待分配任务列表(AllTaskList)的末尾,并返回步骤3;若有AGV竞价成功,则执行步骤5;
步骤5、各个AGV的AGV任务管理模块判断是否接收到新任务;若该AGV接收到新任务,则执行步骤6;若该AGV没有接收到新任务,则执行步骤8;
步骤6、接收到新任务的AGV的AGV任务管理模块将接收的新任务添加至待执行任务列表(AGVTaskList)的末尾;
步骤7、由待执行任务列表末尾添加新任务的AGV的单任务路径规划模块采用路径规划算法(例如A*算法)计算新任务与待执行任务列表上原有的各个待执行任务之间的几何距离,并更新代价表(Distance_Table);
步骤8、由AGV的任务执行模块判断当前AGV是否处于空闲状态(即AGV完成一个任务,正在等待新的任务),若是,则执行步骤9;若不是,则执行步骤10;
步骤9、AGV的任务执行模块获取待执行任务列表(AGVTaskList)中的第一个待执行任务并执行,同时删除待执行任务列表(AGVTaskList)中的该任务;
步骤10、AGV的任务排序模块调用改进的MCTS算法对待执行任务列表(AGVTaskList)中的任务进行排序,完成一轮搜索后,再采用变邻域局部搜索算法,利用2-opt和3-opt构成的邻域进行交替搜索,进一步优化AGV任务路径,然后返回步骤5。
本发明采用基于市场机制的竞价方法分配任务,并将动态路径规划问题转化为动态多任务排序问题,按规划的任务顺序执行任务。同时本发明采用改进的蒙特卡罗树搜索(Monte Carlo Tree Search,MCTS)算法和变邻域局部搜索算法优化AGV动态多任务排序问题,以提高AGV执行所有任务的效率,降低仓库的管理成本,提高运行效率。采用本发明可以显著减少各个AGV之间的通信量,其并行处理机制大大提高了整个系统的运行效率。
作为本发明的进一步技术方案,步骤10中,AGV通过竞价方式接收到一系列任务,并分别记为T1,T2,…,Tk,…,Tn,其所对应的接收时间分别记为t1,t2,…,tk,…,tn,其中任务Tk要求AGV将货物从起始位置运送到目的地位置确定一条合适的任务执行顺序S=(P0,s1,s2,...,sN),其中si表示在第i个位置执行的任务的索引,以便最小化总的移动距离,即最小化以下目标函数:
其中,f(s)表示AGV从停车位置到完成所有任务的总移动距离,Dis(X,Y)表示两个位置X和Y之间的移动距离,P0为AGV的最初位于停车位置,表示任务第si个任务的起始位置,表示第si个任务的目的地位置,表示第si+1个任务的起始位置,表示第s1个任务的起始位置。
进一步的,步骤10中,改进的MCTS(蒙特卡罗树搜索)算法包括以下步骤:
步骤10.1、初始化:用|Len|表示当前任务列表的长度,定义两个|Len|×|Len|的矩阵,分别命名为Times_Table和Weight_Table,Times_Table中的元素Tij代表模拟期间任务i之后是任务j的总次数,并将其全部初始化为0,Weight_Table中的元素Wij用来控制模拟期间在任务i之后选择任务j的概率,将其全部初始化为1;
步骤10.2、模拟:给定一个具有N个任务的任务列表,假设当前任务的索引是i,则使用以下公式来评估下一个候选任务j的潜力Eij,
其中,Eik表示当前任务索引为i时,下一个候选任务为k的可能性;
因此,采用如下公式计算每个候选任务的累积概率qik,
步骤10.3、选择:在模拟过程会生成一系列随机解决方案,对于每个解决方案S,根据代价表则可以计算出每个解决方案的总移动距离f(S);然后,从中选择f(S)最小的解决方案作为一轮模拟期间的最佳解决方案Sbs=(s1,s2,…,sk,…,sN),Sbs表示当前最佳的解决方案,即当前最佳的任务执行顺序;
步骤10.4、反向传播:根据Sbs的信息,更新矩阵Times_Table和Weight_Table中的元素,采用Sgbest表示全局最佳解决方案,更新规则如下所示,
其中,对应矩阵Weight_Table中第sk行sk+1列的元素,e为自然常数,f(Sgbest)表示采用全局最优解决方案Sgbest时AGV移动的总距离,f(Sbs)表示采用当前最优解决方案Sbs时AGV移动的总距离;
进一步的,步骤10中,选用高效2-opt算符和快速3-opt算符交替的方式进行局部搜索。变邻域搜索算法的有效性取决于高效2-opt邻域的局部最优解不一定是快速3-opt邻域的局部最优解。通过比较原始解决方案和2-opt、3-opt移动后的解决方案之间的差异来评估该邻域操作,当所有移动后的解决方案都没有改进时,终止执行;否则,将从生成的解决方案重新启动该过程。
进一步的,步骤10中,优化AGV任务路径,即任务排序模块对AGV任务表优化排序后,判断系统是否停止工作,若是则各个AGV结束工作,回到初始位置,若否则返回步骤5。
进一步的,步骤1中,参与运载的所有AGV视为同构的,任务Tk可以描述为如下形式:Tk={Bk,Dk,Rk},其中,Bk表示任务的起点位置,Dk表示任务的终点位置,Rk表示完成任务的奖励。
本发明还提供一种分布式多AGV系统,主要包括上位任务管理主机和多个同构的AGV。所述上位任务管理主机负责任务的管理与分配,主要由任务信息管理模块、竞价任务分配模块和主机无线通讯模块组成;
所述任务信息管理模块,用于接收并动态管理调度中心发送的任务订单信息;具体为:接收的任务存储在待分配任务列表AllTaskList中(AllTaskList为上位任务管理主机中的全局变量,可以根据主机各模块的请求进行动态增删);
所述竞价任务分配模块,用于实现以竞价的方式向各个AGV分配任务;具体为:向各AGV发布任务竞价信息,接收各AGV的轮番报价,最后按竞价结果将任务分配给AGV;
所述主机无线通讯模块,用于实现上位任务管理主机和各个AGV的双向无线通讯;
所述AGV负责各自的任务路径规划和执行,主要由AGV无线通讯模块、AGV任务管理模块、AGV竞价模块、单任务路径规划模块、任务排序模块和任务执行模块组成;
所述AGV无线通讯模块,用于实现AGV和上位任务管理主机的双向无线通讯;
所述AGV任务管理模块,用于实现AGV的动态任务管理;具体为:接收新任务并存储在AGV的待执行任务列表AGVTaskList中(AGVTaskList为AGV中的全局变量,可以根据AGV各模块请求动态增删);
所述AGV竞价模块,用于根据上位任务管理主机发布的任务信息生成报价;具体为:基于市场机制设计成本函数,AGV的报价由成本函数生成;
所述单任务路径规划模块,采用路径规划算法(如A*算法)进行单任务路径规划,使用代价表(Distance_Table)存储任意两个任务之间的代价(如一个任务的终点至另一任务的起点的几何距离);
所述任务排序模块,采用改进的MCTS算法和变邻域局部搜索算法对待执行任务列表(AGVTaskList)中的任务进行动态多任务排序;
所述任务执行模块,用于按照待执行任务列表(AGVTaskList)中的任务顺序执行任务。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
1.在分布式多AGV控制系统中,动态任务路径规划被分散到各个AGV中,各个AGV自主决定任务执行顺序与每个任务的路径规划,这种并行处理机制大大提高了整个系统的运行效率;
2.所述的分布式多AGV控制模型具有去中心化的特点,使得各个AGV在结构与功能上彼此独立,即使个别AGV出现故障也不会影响其他AGV的正常工作,因此该方案具有较强的容错率和可扩展性;
3.采用改进的蒙特卡罗树搜索算法进行动态任务排序可以有效利用历史信息来提高搜索效率,结合变邻域局部搜索可以更好的探索局部搜索空间,能有效减少每个AGV的总移动距离,提高完成所有任务的效率。
总之,本发明提出了一种分布式的多AGV动态任务分配及其路径规划方法与系统,采用基于市场机制的竞价方法分配任务,并将动态路径规划问题转化为动态多任务排序问题,按规划的任务顺序执行任务。采用了分布式系统结构,能实现多AGV个体之间的分散管理,从而解决动态任务下路径规划计算量大、效率低的问题;采用改进的蒙特卡罗树搜索算法和变邻域局部搜索算法优化AGV动态多任务排序问题,可以提高AGV执行所有任务的效率,降低仓库的管理成本、提高运行效率,具有较好的应用前景。
附图说明
图1为本发明构建的分布式多AGV系统结构图。
图2为本发明提供的分布式多AGV动态任务分配及其路径规划方法流程图。
图3为本发明提供的分布式多AGV系统工作流程图。
图4为本发明实施案例提供的仿真环境图。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护权限不限于下述的实施例。
实施例1实施案例
本实施例以仓储环境下的多AGV为应用背景,构建了一种分布式多AGV系统,该系统主要包括上位任务管理主机和多个同构的AGV,系统的总体结构图如图1所示。
上位任务管理主机负责任务的管理与分配。实现该功能的上位任务管理主机系统主要包括任务信息管理模块、竞价任务分配模块和主机无线通讯模块。其各模块功能如下:
(1)任务信息管理模块的功能是接收并动态管理调度中心发送的任务订单信息。具体为:接收的任务存储在待分配任务列表AllTaskList中(AllTaskList为上位任务管理主机中的全局变量,可以根据各模块的请求进行动态增删)。参与运载的所有AGV视为同构的,任务Tk可以描述为如下形式:Tk={Bk,Dk,Rk},其中,Bk表示任务的起点位置,Dk表示任务的终点位置,Rk表示完成任务的奖励。
(2)竞价任务分配模块的功能是实现以竞价的方式向各AGV分配任务。具体为:向各AGV发布任务竞价信息,接收各AGV的轮番报价,最后按竞价结果将任务分配给AGV。
(3)主机无线通讯模块的功能是实现上位任务管理主机和各AGV的双向无线通讯。
AGV负责各自的任务路径规划和执行。实现该过程的各AGV系统主要包括AGV无线通讯模块、AGV任务管理模块、AGV竞价模块、单任务路径规划模块、任务排序模块以及任务执行模块。其各模块功能如下:
(1)AGV无线通讯模块的功能是实现AGV和上位任务管理主机的双向无线通讯。
(2)AGV任务管理模块的功能是实现AGV的动态任务管理。具体为:接收新任务并存储在AGV的待执行任务列表AGVTaskList中(AGVTaskList为AGV中的全局变量,可以根据AGV各模块请求动态增删)。
(3)AGV竞价模块的功能是根据上位任务管理主机发布的任务信息生成报价。具体为:基于市场机制设计成本函数,AGV的报价由成本函数生成。
(4)单任务路径规划模块的功能是采用A*算法进行单任务路径规划,使用Distance_Table存储任意两个任务之间的几何距离。
(5)任务排序模块的功能是采用改进的MCTS和变邻域局部搜索算法对AGVTaskList中的任务进行动态多任务排序。
(6)任务执行模块的功能是按照AGVTaskList中的任务顺序执行任务。
本实施例还提供了一种分布式的多AGV动态任务分配及其路径规划方法,其方法流程图如图2所示,该方法的执行包含以下步骤:
步骤1:初始化地图信息,AGV的位置信息、待分配任务列表AllTaskList以及AGV的待执行任务列表AGVTaskList等。
步骤2:任务信息管理模块接收调度中心的任务订单信息并存储在待分配任务列表AllTaskList中。
步骤3:竞价任务分配模块向各AGV发布任务竞价信息,接收各AGV的报价,按竞价结果将任务分配给AGV。
步骤4:竞价任务分配模块给出竞价结果,由AGV竞价模块判断是否竞价成功。若所有AGV竞价失败,则将该任务返回到AllTaskList列表的末尾,并返回步骤3;若AGV竞价成功,则执行步骤5。
步骤5:由AGV任务管理模块判断是否接收到新任务。若AGV接收到新任务,则执行步骤6;若没有接收到新任务,则执行步骤8。
步骤6:AGV任务管理模块接收新任务并将其添加至待执行任务列表AGVTaskList的末尾。
步骤7:由单任务路径规划模块采用A*算法计算新任务与各个待执行任务之间的几何距离,并更新代价表Distance_Table。
步骤8:由AGV的任务执行模块判断当前AGV是否处于空闲状态(即AGV完成一个任务,正在等待新的任务)。若是,则执行步骤9;若不是,则执行步骤10。
步骤9:任务执行模块获取待执行任务列表AGVTaskList中的第一个任务并执行,同时删除AGVTaskList中的该任务。
步骤10:任务排序模块采用改进的MCTS算法对待执行任务列表AGVTaskList中的任务进行排序,完成一轮搜索后,再采用变邻域局部搜索算法,利用2-opt和3-opt构成的邻域进行交替搜索,进一步优化AGV任务路径。执行步骤5。
步骤10的目的可以描述为:AGV(最初位于停车位置P0)通过竞价方式接收到一系列任务,分别记为T1,T2,…,Tk,…,Tn,分别对应接收时间为t1,t2,…,tk,…,tn,其中任务Tk要求AGV将货物从起始位置运送到目的地位置该问题的目的是确定一条合适的任务执行顺序S=(P0,s1,s2,...,sN),其中si表示在第i个位置执行的任务的索引,以便最小化总的移动距离,即最小化以下目标函数:
其中,f(s)表示AGV从停车位置到完成所有任务的总移动距离,Dis(X,Y)表示两个位置X和Y之间的移动距离,P0为AGV的最初位于停车位置,表示任务第si个任务的起始位置,表示第si个任务的目的地位置,表示第si+1个任务的起始位置,表示第s1个任务的起始位置。改进的蒙特卡罗树搜索算法还包括以下步骤:
步骤10.1:初始化:用|Len|表示当前任务列表的长度,定义两个|Len|×|Len|的矩阵,分别命名为Times_Table和Weight_Table。Times_Table中的元素Tij代表模拟期间任务i之后是任务j的总次数,并将其全部初始化为0,Weight_Table中的元素Wij用来控制模拟期间在任务i之后选择任务j的概率,将其全部初始化为1。
步骤10.2、模拟:给定一个具有N个任务的任务列表,假设当前任务的索引是i,则使用以下公式来评估下一个候选任务j的潜力Eij,
其中,Eik表示当前任务索引为i时,下一个候选任务为k的可能性;
因此,采用如下公式计算每个候选任务的累积概率qik,
步骤10.3、选择:在模拟过程会生成一系列随机解决方案,对于每个解决方案S,根据代价表则可以计算出每个解决方案的总移动距离f(S);然后,从中选择f(S)最小的解决方案作为一轮模拟期间的最佳解决方案Sbs=(s1,s2,…,sk,…,sN),Sbs表示当前最佳的解决方案,即当前最佳的任务执行顺序。
步骤10.4、反向传播:根据Sbs的信息,更新矩阵Times_Table和Weight_Table中的元素,采用Sgbest表示全局最佳解决方案,更新规则如下所示,
其中,对应矩阵Weight_Table中第sk行sk+1列的元素,e为自然常数,f(Sgbest)表示采用全局最优解决方案Sgbest时AGV移动的总距离,f(Sbs)表示采用当前最优解决方案Sbs时AGV移动的总距离。
步骤10中,优化AGV任务路径,即任务排序模块对AGV任务表优化排序后,判断系统是否停止工作,若是则各个AGV结束工作,回到初始位置,若否则返回步骤5。
本实施例选用高效2-opt算符和快速3-opt算符交替的进行局部搜索。变邻域搜索算法的有效性取决于高效2-opt邻域的局部最优解不一定是快速3-opt邻域的局部最优解。通过比较原始解决方案和2-opt、3-opt移动后的解决方案之间的差异来评估该邻域操作,当所有移动后的解决方案都没有改进时,终止执行;否则,将从生成的解决方案重新启动该过程。
整个分布式多AGV系统工作流程如图3所示。
实施例2仿真实验分析
为了测试实施例1提出的方法的性能,在图4所示的仓储地图上进行模拟测试,其中深色网格表示货架,浅色网格表示AGV的可行区域,任务是指将货物从一个货位搬运到另一个货位。在每次仿真中,首先随机生成一系列任务集,每个任务集包含许多任务(动态接收),每个任务的起止位置都是AGV能到达的位置,且不重复。AGV从其停放位置(地图的左下方网格)开始,逐个执行所有任务,最后返回停车位置(AGV每单位时间移动一个网格)。
不同的任务集对应不同的任务数量,小任务集通常包含50个任务,中等任务集包含100个任务,大任务集包含200个任务。假设任意两个连续的任务之间的发布时间间隔满足正态分布T(μ,σ2),其中,μ表示连续任务之间的平均时间间隔(分别设置为5、10、15、20、25个单位时间),σ2表示方差(分别设置为μ/2和μ/5),总共设置30个任务集。
本实施例对这30个任务集分别使用SEQ(按收到任务的先后顺序执行任务)、MCTS(基本的蒙特卡罗树搜索)和MCTS+LS(本实施例提供的改进的蒙特卡罗树搜索)方法确定任务顺序,由AGV模拟执行它们,表1至表3中分别给出了小型、中型和大型任务集的模拟结果。每个表的每一行都对应一个任务集,表的第1列表示任务数量,第2、3列分别表示正态分布的均值(单位时间)和方差,第4列给出了AGV根据SEQ执行每个任务集的总过渡距离DSEQ,第5列给出了AGV根据MCTS执行每个任务集的总过渡距离DMCTS,第6列给出了AGV根据MCTS+LS执行每个任务集的总过渡距离DMCTS+LS,第7列给出了MCTS+LS相对于SEQ节省的移动距离百分比saveSEQ(%),第8列给出了MCTS+LS相对于MCTS节省的移动距离百分比saveMCTS(%)。最后一行给出了任务集的平均结果,而无意义的项标记为“-”。
表1 10个小任务集的实验结果
表2 10个中等任务集的实验结果
表3 10个大任务集的实验结果
从表中可以看出,在小规模、中等规模和大规模的任务集上,与SEQ相比,MCTS+LS算法分别节省了47.63%、54.84%和57.01%的移动距离;与基本的MCTS相比MCTS+LS算法分别节省了5.31%、9.63%和11.63%的移动距离。这些结果清楚地表明了MCTS+LS在提高AGV运输效率上的能力,此外,在较大规模的任务集上的改进率通常大于小规模任务集上的改进率,表明了基于改进蒙特卡罗树搜索和变邻域局部搜索算法在解决大规模实例问题上的有效性。
以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (7)
1.一种分布式多AGV动态任务分配及其路径规划方法,其特征在于,该方法的执行包含以下步骤:
步骤1、初始化地图信息,地图信息包括AGV的位置信息、待分配任务列表以及AGV的待执行任务列表;
步骤2、上位任务管理主机的任务信息管理模块接收调度中心的任务订单信息并将其存储在待分配任务列表中;
步骤3、上位任务管理主机的竞价任务分配模块向多个同构的AGV发布任务竞价信息,并接收各个AGV的报价,然后确定竞价结果以决定任务的归属,按竞价结果将任务分配给AGV;
步骤4、竞价任务分配模块给出竞价结果后,由各个AGV的AGV竞价模块判断是否竞价成功;若所有AGV竞价失败,则将该任务返回到待分配任务列表的末尾,并返回步骤3;若有AGV竞价成功,则执行步骤5;
步骤5、各个AGV的AGV任务管理模块判断是否接收到新任务;若该AGV接收到新任务,则执行步骤6;若该AGV没有接收到新任务,则执行步骤8;
步骤6、接收到新任务的AGV的AGV任务管理模块将接收的新任务添加至待执行任务列表的末尾;
步骤7、由单任务路径规划模块采用路径规划算法计算新任务与各个待执行任务之间的几何距离,并更新代价表;
步骤8、由AGV的任务执行模块判断当前AGV是否处于空闲状态,若是,则执行步骤9;若不是,则执行步骤10;
步骤9、AGV的任务执行模块获取待执行任务列表中的第一个待执行任务并执行,同时删除待执行任务列表中的该任务;
步骤10、AGV的任务排序模块调用改进的MCTS算法对待执行任务列表中的任务进行排序,完成一轮搜索后,再采用变邻域局部搜索算法,利用2-opt和3-opt构成的邻域进行交替搜索,进一步优化AGV任务路径,然后返回步骤5。
2.根据权利要求1所述一种分布式多AGV动态任务分配及其路径规划方法,其特征在于,步骤10中,AGV通过竞价方式接收到一系列任务,并分别记为T1,T2,…,Tk,…,Tn,其所对应的接收时间分别记为t1,t2,…,tk,…,tn,其中任务Tk要求AGV将货物从起始位置运送到目的地位置确定一条合适的任务执行顺序S=(P0,s1,s2,...,sN),其中si表示在第i个位置执行的任务的索引,以便最小化总的移动距离,即最小化以下目标函数:
3.根据权利要求2所述一种分布式多AGV动态任务分配及其路径规划方法,其特征在于,步骤10中,改进的MCTS算法包括以下步骤:
步骤10.1、初始化:用|Len|表示当前任务列表的长度,定义两个|Len|×|Len|的矩阵,分别命名为Times_Table和Weight_Table,Times_Table中的元素Tij代表模拟期间任务i之后是任务j的总次数,并将其全部初始化为0,Weight_Table中的元素Wij用来控制模拟期间在任务i之后选择任务j的概率,将其全部初始化为1;
步骤10.2、模拟:给定一个具有N个任务的任务列表,假设当前任务的索引是i,则使用以下公式来评估下一个候选任务j的潜力Eij,
其中,Eik表示当前任务索引为i时,下一个候选任务为k的可能性;
因此,采用如下公式计算每个候选任务的累积概率qik,
步骤10.3、选择:在模拟过程会生成一系列随机解决方案,对于每个解决方案S,根据代价表则可以计算出每个解决方案的总移动距离f(S);然后,从中选择f(S)最小的解决方案作为一轮模拟期间的最佳解决方案Sbs=(s1,s2,…,sk,…,sN),Sbs表示当前最佳的解决方案,即当前最佳的任务执行顺序;
步骤10.4、反向传播:根据Sbs的信息,更新矩阵Times_Table和Weight_Table中的元素,采用Sgbest表示全局最佳解决方案,更新规则如下所示,
其中,对应矩阵Weight_Table中第sk行sk+1列的元素,e为自然常数,f(Sgbest)表示采用全局最优解决方案Sgbest时AGV移动的总距离,f(Sbs)表示采用当前最优解决方案Sbs时AGV移动的总距离;
4.根据权利要求1所述一种分布式多AGV动态任务分配及其路径规划方法,其特征在于,步骤10中,选用高效2-opt算符和快速3-opt算符交替的方式进行局部搜索;通过比较原始解决方案和2-opt、3-opt移动后的解决方案之间的差异来评估邻域操作,当所有移动后的解决方案都没有改进时,终止执行;否则,将从生成的解决方案重新启动路径规划过程。
5.根据权利要求1所述一种分布式多AGV动态任务分配及其路径规划方法,其特征在于,步骤10中,优化AGV任务路径,即任务排序模块对AGV任务表优化排序后,判断系统是否停止工作,若是则各个AGV结束工作,回到初始位置,若否则返回步骤5。
6.根据权利要求1所述一种分布式多AGV动态任务分配及其路径规划方法,其特征在于,步骤1中,参与运载的所有AGV视为同构的,任务Tk可以描述为如下形式:Tk={Bk,Dk,Rk},其中,Bk表示任务的起点位置,Dk表示任务的终点位置,Rk表示完成任务的奖励。
7.一种分布式多AGV系统,其特征在于:主要包括上位任务管理主机和多个同构的AGV,所述上位任务管理主机负责任务的管理与分配,主要由任务信息管理模块、竞价任务分配模块和主机无线通讯模块组成;
所述任务信息管理模块,用于接收并动态管理调度中心发送的任务订单信息;
所述竞价任务分配模块,用于实现以竞价的方式向各个AGV分配任务;
所述主机无线通讯模块,用于实现上位任务管理主机和各个AGV的双向无线通讯;
所述AGV负责各自的任务路径规划和执行,主要由AGV无线通讯模块、AGV任务管理模块、AGV竞价模块、单任务路径规划模块、任务排序模块和任务执行模块组成;
所述AGV无线通讯模块,用于实现AGV和上位任务管理主机的双向无线通讯;
所述AGV任务管理模块,用于实现AGV的动态任务管理;
所述AGV竞价模块,用于根据上位任务管理主机发布的任务信息生成报价;
所述单任务路径规划模块,采用路径规划算法进行单任务路径规划,使用代价表存储任意两个任务之间的代价;
所述任务排序模块,采用改进的MCTS算法和变邻域局部搜索算法对待执行任务列表中的任务进行动态多任务排序;
所述任务执行模块,用于按照待执行任务列表中的任务顺序执行任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910514033.0A CN110264062B (zh) | 2019-08-12 | 2019-08-12 | 分布式多agv动态任务分配及其路径规划方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910514033.0A CN110264062B (zh) | 2019-08-12 | 2019-08-12 | 分布式多agv动态任务分配及其路径规划方法与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110264062A CN110264062A (zh) | 2019-09-20 |
CN110264062B true CN110264062B (zh) | 2022-08-23 |
Family
ID=67918321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910514033.0A Active CN110264062B (zh) | 2019-08-12 | 2019-08-12 | 分布式多agv动态任务分配及其路径规划方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110264062B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110888407B (zh) * | 2019-11-28 | 2021-09-17 | 浙江华睿科技股份有限公司 | 一种agv调度系统中的任务分配方法及装置 |
CN111079990B (zh) * | 2019-11-29 | 2022-11-25 | 炬星科技(深圳)有限公司 | 集群机器人调度方法、装置、系统、设备及计算机可读存储介质 |
CN110969870B (zh) * | 2019-12-02 | 2023-05-12 | 天津阿备默机器人科技有限公司 | 一种多主机构架的agv控制系统及其实现方法 |
CN113050614B (zh) * | 2019-12-26 | 2022-07-26 | 炬星科技(深圳)有限公司 | 机器人自主管理执行能力的方法、设备及存储介质 |
CN111242487B (zh) * | 2020-01-14 | 2023-06-09 | 北京唐颐惠康生物医学技术有限公司 | 一种基于workflow的动态精准任务分配方法及分配系统 |
CN111243315A (zh) * | 2020-01-16 | 2020-06-05 | 河北科技大学 | 车辆定位控制系统及控制方法 |
CN113469477A (zh) * | 2020-03-31 | 2021-10-01 | 东元电机股份有限公司 | 多移动平台任务分配系统 |
CN111459108B (zh) * | 2020-04-08 | 2021-07-06 | 北京理工大学 | 拖挂式多agv系统的任务分配及无冲突路径规划方法 |
CN111653098B (zh) * | 2020-06-04 | 2022-04-26 | 南京航空航天大学 | 多载量自动导引车交叉路口通行顺序优化方法 |
CN111633655B (zh) * | 2020-06-06 | 2021-04-30 | 杭州电子科技大学 | 一种分布式自主移动机器人交通调度方法 |
CN112001590B (zh) * | 2020-07-20 | 2024-05-10 | 浙江华睿科技股份有限公司 | Agv休息任务分配方法、装置、计算机设备和存储介质 |
CN113066294A (zh) * | 2021-03-16 | 2021-07-02 | 东北大学 | 基于云边融合技术的智能停车场系统 |
CN113233070B (zh) * | 2021-06-01 | 2022-10-14 | 深圳市信立自动化有限公司 | 基于物联网的联机堆垛机控制方法及系统 |
CN113253692B (zh) * | 2021-06-21 | 2021-10-15 | 浙江华睿科技股份有限公司 | Agv的巡游方法、装置、设备及可读存储介质 |
CN114489062B (zh) * | 2022-01-18 | 2023-03-21 | 北京理工大学 | 面向车间物流的多自动导引车分布式动态路径规划方法 |
CN115186878B (zh) * | 2022-06-22 | 2023-05-16 | 湖南大学无锡智能控制研究院 | 一种多agv在线任务分配方法及系统 |
CN115860431B (zh) * | 2023-02-07 | 2023-05-26 | 广东技术师范大学 | 基于异构感知的多机器人智能调度方法、系统、机器人及介质 |
CN116245257B (zh) * | 2023-05-06 | 2023-09-12 | 季华实验室 | 一种多机器人调度方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107036618A (zh) * | 2017-05-24 | 2017-08-11 | 合肥工业大学(马鞍山)高新技术研究院 | 一种基于最短路径深度优化算法的agv路径规划方法 |
CN107727099A (zh) * | 2017-09-29 | 2018-02-23 | 山东大学 | 一种工厂内物料运输多agv调度及路径规划方法 |
-
2019
- 2019-08-12 CN CN201910514033.0A patent/CN110264062B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110264062A (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110264062B (zh) | 分布式多agv动态任务分配及其路径规划方法与系统 | |
CN110632907B (zh) | 一种分布式装配式置换流水车间调度优化方法及系统 | |
CN109034468B (zh) | 一种基于布谷鸟算法的带时间窗的物流配送路径规划方法 | |
Van Laarhoven et al. | Job shop scheduling by simulated annealing | |
CN110807236A (zh) | 一种基于多机器人的仓储物流仿真系统 | |
CN109784566A (zh) | 一种订单排序优化方法及装置 | |
CN106773686B (zh) | 同轨双车运行模式下堆垛机调度路径模型建立方法 | |
CN113075927A (zh) | 基于预约表的仓储潜伏式多agv路径规划方法 | |
CN110059926A (zh) | 拣选调度方法、装置、仓储系统及可读存储介质 | |
CN113359702B (zh) | 一种基于水波优化-禁忌搜索的智能仓库agv作业优化调度方法 | |
CN104331749A (zh) | 基于模拟退火粒子群的agv优化调度方法 | |
Zhang et al. | An effective multi-AGVs dispatching method applied to matrix manufacturing workshop | |
CN108171357A (zh) | 物流信息系统中的信息处理方法和装置 | |
CN114154819A (zh) | 一种基于任务相似度的多agv分布式调度方法与系统 | |
CN112785132A (zh) | 一种用于智能仓库的多机器人移动货架任务分配方法 | |
CN113762594A (zh) | 车机协同配送灾后救援物资的路径规划方法和装置 | |
CN113867358A (zh) | 多无人车协同遍历任务的智能路径规划方法 | |
CN110619493B (zh) | Agv布局方法和系统、电子设备及存储介质 | |
CN113865607A (zh) | 路径规划方法、装置、设备及存储介质 | |
Liu et al. | Holonic manufacturing system for distributed control of automated guided vehicles | |
CN115629614B (zh) | 一种基于遗传算法的仓储多agv路径规划方法 | |
Xia et al. | A multi-AGV optimal scheduling algorithm based on particle swarm optimization | |
CN115062868B (zh) | 一种预聚类的车辆配送路径规划方法和装置 | |
CN111178596A (zh) | 一种物流配送路线规划方法、装置及存储介质 | |
CN114707707A (zh) | 一种基于改进的遗传算法对agv任务调度的方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |