CN115421448A - Agv拣货路径规划方法及系统 - Google Patents
Agv拣货路径规划方法及系统 Download PDFInfo
- Publication number
- CN115421448A CN115421448A CN202210887855.5A CN202210887855A CN115421448A CN 115421448 A CN115421448 A CN 115421448A CN 202210887855 A CN202210887855 A CN 202210887855A CN 115421448 A CN115421448 A CN 115421448A
- Authority
- CN
- China
- Prior art keywords
- path
- agv
- population
- target
- individual
- 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 86
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 59
- 230000002068 genetic effect Effects 0.000 claims abstract description 42
- 108090000623 proteins and genes Proteins 0.000 claims description 32
- 230000001133 acceleration Effects 0.000 claims description 26
- 238000011156 evaluation Methods 0.000 claims description 18
- 230000004913 activation Effects 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 16
- 230000003068 static effect Effects 0.000 claims description 10
- 238000010353 genetic engineering Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 44
- 238000004590 computer program Methods 0.000 description 9
- 238000004088 simulation Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 210000000349 chromosome Anatomy 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000035772 mutation Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000011217 control strategy Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- AFCARXCZXQIEQB-UHFFFAOYSA-N N-[3-oxo-3-(2,4,6,7-tetrahydrotriazolo[4,5-c]pyridin-5-yl)propyl]-2-[[3-(trifluoromethoxy)phenyl]methylamino]pyrimidine-5-carboxamide Chemical compound O=C(CCNC(=O)C=1C=NC(=NC=1)NCC1=CC(=CC=C1)OC(F)(F)F)N1CC2=C(CC1)NN=N2 AFCARXCZXQIEQB-UHFFFAOYSA-N 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4189—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system
- G05B19/41895—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system using automatic guided vehicles [AGV]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- 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/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- 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/0835—Relationships between shipper or supplier and carriers
- G06Q10/08355—Routing methods
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Game Theory and Decision Science (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及路线规划技术领域,提供一种AGV拣货路径规划方法及系统,摒弃了现有AGV针对单一种类的货物执行分拣任务的工作模式,而是针对一个订单中的多种货物依次进行分拣,如此可以提高货物的分拣效率,缩短AGV的行驶路程。而且,AGV在执行完成一个订单后的停放位置并非是停车区,而是前一订单中的首次拣货位置本,可以提高AGV的工作效率,节约重回停车区导致的时间成本和电耗成。此外,结合各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并以遗传算法对TSP模型进行求解的方式确定各备选路径中的全局规划路径,相比于现有的A*算法,其搜索效率大大提升,可以提升路径规划效率,提高货物的分拣效率。
Description
技术领域
本发明涉及路线规划技术领域,尤其涉及一种AGV拣货路径规划方法及系统。
背景技术
自动导引运输车(Automated Guided Vehicle,AGV)作为智能仓储中智能搬运系统的主要设备之一,在仓库分拣活动中具有重要作用。现有智能仓库的布局一般会根据用途将其划分为货物存放区、分拣区、控制中心、停车区以及行驶区域,如图1所示。图1中虚线所在空白区域均为行驶区域。
AGV的工作模式通常是完成单一种类货物的拣选,从停车区出发到货物存放区拣选货物,并将货物送到分拣区的拣货台,之后再将货架送回到货物存放区的存放位置,此后AGV回到停车区。在这种工作模式下,通常采用A*算法进行AGV的路径规划。
现有技术中采用的AGV工作模式,AGV一个路程来回只能完成一种货物分拣,分拣效率不高。而且,由于A*算法的搜索效率较低,导致路径规划效率较低,也进一步影响了货物分拣效率。
发明内容
本发明提供一种AGV拣货路径规划方法及系统,用以解决现有技术中存在的缺陷。
本发明提供一种AGV拣货路径规划方法,包括:
获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;
以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;
基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
根据本发明提供的一种AGV拣货路径规划方法,所述采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径,具体包括:
将所述各备选路径作为个体,将所述各备选路径的中间节点作为基因,并基于所述各备选路径的路径长度、路径转角以及路径拐点个数,确定个体适应度;
采用两个Flink集群,分别初始化得到第一种群和第二种群,并对所述第一种群的个体进行迭代更新得到第三种群,对所述第二种群的个体进行迭代更新得到第四种群;
从所述第三种群以及所述第四种群中确定最佳个体适应度对应的第一个体,将所述第一个体确定为所述全局规划路径。
根据本发明提供的一种AGV拣货路径规划方法,所述采用两个Flink集群,分别初始化得到第一种群和第二种群,具体包括:
采用第一Flink集群,初始化得到第一备选种群,并采用第二Flink集群,初始化得到第二备选种群;
基于所述第一备选种群的个体适应度方差,确定所述第一种群;
基于所述第二备选种群的每个个体与最佳个体适应度对应的第二个体之间的相似度均值,确定所述第二种群。
根据本发明提供的一种AGV拣货路径规划方法,所述对所述第一种群的个体进行迭代更新得到第三种群,具体包括:
采用第一Flink集群的主节点,将所述第一种群划分为多个第一子种群,并采用所述第一Flink集群的任务节点分布式并行对每个第一子种群进行第一类基因操作,得到更新后的第一子种群;
采用所述主节点,对所有更新后的第一子种群进行汇合,得到第一新种群;
采用所述第一Flink集群对所述第一新种群迭代进行划分、第一类基因操作以及汇合,得到所述第三种群。
根据本发明提供的一种AGV拣货路径规划方法,所述采用所述第一Flink集群中的任务节点分布式并行对每个第一子种群进行第一类基因操作,具体包括:
对于所述第一Flink集群中的任一任务节点,采用所述任一任务节点,基于所述第一子种群中的任一个体的个体适应度,确定所述任一个体对应的激活函数;
基于所述任一个体的激活函数以及所述第一类基因操作的操作概率范围,确定所述任一个体对应的第一类基因操作的目标操作概率;
基于所述目标操作概率,对所述任一个体进行所述第一类基因操作。
根据本发明提供的一种AGV拣货路径规划方法,所述采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径,之后还包括:
基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径。
根据本发明提供的一种AGV拣货路径规划方法,所述动态窗口算法的动态窗口评价函数基于所述目标AGV的当前模拟速度信息的评价函数、所述目标AGV的模拟轨迹与所述目标AGV周围的静态障碍物之间的最近距离以及所述模拟轨迹的终点方向与所述全局规划路径上的目标点之间的方位角偏差确定,所述目标点为以所述目标AGV的当前位置为圆心、以目标距离为半径的圆周与所述全局规划路径的交点。
根据本发明提供的一种AGV拣货路径规划方法,所述基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径,具体包括:
在局部路径规划过程中,若所述目标AGV的当前位置的第一预设范围内存在多个第一类AGV,则控制所述多个第一类AGV停止运行,并按所述多个第一类AGV的序号由大到小的顺序依次重新对每个第一类AGV的全局规划路径进行局部路径规划,以使每个第一类AGV驶离所述第一预设范围。
根据本发明提供的一种AGV拣货路径规划方法,所述基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径,具体包括:
在局部路径规划过程中,若所述目标AGV的当前位置的第二预设范围内存在多个第二类AGV,则控制所述多个第二类AGV以第一加速度进行减速运行;
若所述目标AGV的当前位置的第三预设范围内存在多个第三类AGV,则控制所述多个第三类AGV以第二加速度进行减速运行;
其中,所述第二预设范围中任一点与所述目标AGV的距离均大于所述第一预设范围中任一点与所述目标AGV的距离,所述第三预设范围中任一点与所述目标AGV的距离均大于所述第二预设范围中任一点与所述目标AGV的距离,所述第一加速度大于所述第二加速度。
本发明还提供一种AGV拣货路径规划系统,包括:
获取模块,用于获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;
备选路径构建模块,用于以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;
全局路径规划模块,用于基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的AGV拣货路径规划方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的AGV拣货路径规划方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述的AGV拣货路径规划方法。
本发明提供的AGV拣货路径规划方法及系统,该方法摒弃了现有的AGV针对单一种类的货物执行分拣任务的工作模式,而是针对一个订单中的多种货物依次进行分拣,如此可以提高货物的分拣效率,缩短AGV的行驶路程。而且,AGV在执行完成一个订单后的停放位置并非是停车区,而是前一订单中的首次拣货位置本,可以提高AGV的工作效率,节约重回停车区导致的时间成本和电耗成。此外,结合各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并以遗传算法对TSP模型进行求解的方式确定各备选路径中的全局规划路径,相比于现有的A*算法,其搜索效率大大提升,可以提升路径规划效率,进一步提高货物的分拣效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中的智能仓库的布局示意图;
图2是本发明提供的AGV拣货路径规划方法的流程示意图;
图3是本发明提供的AGV拣货路径规划方法中拣货顺序与货架放回的反向顺序示意图;
图4是本发明提供的AGV拣货路径规划方法中采用两个Flink集群执行遗传算法求解全局规划路径的流程示意图;
图5是本发明提供的AGV拣货路径规划方法中第一Flink集群对第一种群的个体进行迭代更新得到第三种群的流程示意图;
图6是本发明提供的AGV拣货路径规划方法中采用的激活函数为Tanh函数时的曲线形式示意图;
图7是本发明提供的AGV拣货路径规划方法中全局规划路径与目标点的关系示意图;
图8是本发明提供的AGV拣货路径规划方法中阶梯式紧急控制策略示意图;
图9是本发明提供的AGV拣货路径规划装置的结构示意图;
图10是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由于现有技术中采用的AGV工作模式,AGV一个路程来回只能完成一种货物分拣,分拣效率不高。而且,AGV执行分拣任务后再回到停车区,这个路程上时间和电量的消耗也没有必要。此外,由于A*算法的搜索效率较低,导致路径规划效率较低,也进一步影响了货物分拣效率。为此,本发明实施例中提供了一种AGV拣货路径规划方法。
图2为本发明实施例中提供的一种AGV拣货路径规划方法的流程示意图,如图2所示,该方法包括:
S1,获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;
S2,以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;
S3,基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
具体地,本发明实施例中提供的AGV拣货路径规划方法,其执行主体为AGV拣货路径规划装置,该装置可以配置于控制中心,该控制中心可以为服务器,该服务器可以是本地服务器,例如计算机等,本发明实施例中对此不作具体限定。
首先执行步骤S1,获取当前订单并确定当前订单对应的一个目标AGV。当前订单中包含有多种货物,多种货物可以存放于货物存放区的不同存放位置。目标AGV是指需要执行当前订单中货物的分拣任务的一个AGV。也就是说,目标AGV的工作模式是按订单执行分拣任务,即先执行完成一个订单,再执行下一个订单。当前订单可以是目标AGV开机后需要执行的第一个订单,也可以是目标AGV开机后需要执行的第n(n≥2)个订单,此处不作具体限定。
然后执行步骤S2,以目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、当前订单的目标位置为结束节点,构建各备选路径。目标AGV的停放位置,即目标AGV开始对当前订单中的货物进行拣选之前的出发位置,可以包括当前订单的前一订单中的首次拣货位置。前一订单是指目标AGV在执行当前订单的分拣任务之前已经完成的最近一个订单,前一订单中的首次拣货位置是指目标AGV在执行前一订单时首次拣选的货物的存放位置。
由此可知,目标AGV的工作模式是在执行每一个订单的分拣任务时在货物存放区先后完成订单中多种货物的拣选并一同运送至订单的目标位置,即分拣区的拣货台,之后需要以拣货顺序的反向顺序将货物的货架送回到货物存放区中货物的存放位置,此后目标AGV停放在首次拣货位置处,即目标AGV在送回最后一个货架后直接停靠在最后一个货架的存放位置处,而非直接回到停车区。这利用到了访问时间局部性原理,因为该货物刚刚被拣取过,所以很有可能在下个订单中还会被拣取,目标AGV停留在该处就不用再从停车区行驶至该货架处。
可以理解的是,每个货物均对应有一个货架,该货架用以承载货物并保证货物的顺利装运。本发明实施例中,不考虑货物尺寸和货架大小。
因此,货物的存放位置与该货物的货架的存放位置是一致的。拣货顺序的反向顺序是指拣货顺序的倒序,例如图3所示,当前订单中包含有n种货物,拣货顺序为第一种货物T1、第二种货物T2、……、第n种货物Tn,则反向顺序为第n种货物Tn、……、第二种货物T2、第一种货物T1。
各备选路径为目标AGV在执行当前订单时可能行走的路径,各备选路径的起始节点均为目标AGV的停放位置,结束节点均为当前订单的目标位置,即分拣区的拣货台,不同点在于中间节点的先后顺序不同,即目标AGV到达不同种类货物的存放位置的先后顺序不同。
最后执行步骤S3,根据各备选路径的路径长度、路径转角以及路径拐点个数,建立旅行商问题(Traveling Salesman Problem,TSP)模型。每个备选路径的路径长度均为顺次连接的起始节点、中间节点以及结束节点之间的距离之和。路径转角可以用于表征备选路径的平滑度,是指备选路径中所有节点的转角之和,每个节点的转角为该节点的第一连线与第二连线之间的夹角,第一连线为该节点与下一节点的连线,第二连线为该节点与上一节点的连线,每个节点的转角均在0°-90°范围内。路径拐点即为节点的转角不为0的节点。
在建立TSP模型时,可以先根据各备选路径的路径长度、路径转角以及路径拐点个数,确定目标函数。该目标函数可以是各备选路径中路径长度、路径转角以及路径拐点个数的加权求和,即有:
f(T1,T2……Tn)=α·l(T1,T2……Tn)+β·θ(T1,T2……Tn)+γ·T(T1,T2……Tn)
其中,f(T1,T2……Tn)表示目标函数,T1,T2……Tn表示每个备选路径上的节点,共有n个,l(T1,T2……Tn)表示每个备选路径的长度,θ(T1,T2……Tn)表示每个备选路径的路径转角,α、β、γ均表示权重系数,且均为常数。
然后以目标函数的最小化构建TSP模型。TSP模型可以表示为:
min f(T1,T2……Tn)
约束条件可以表示为:
本发明实施例中,可以采用遗传算法,对TSP模型进行求解,进而可以确定出各备选路径中的全局规划路径。在采用遗传算法对TSP模型进行求解时,可以将各备选路径作为个体,将各备选路径的中间节点作为基因,并以TSP模型的目标函数作为个体适应度的计算函数,采用遗传算法的常规求解过程实现,此处不作具体限定。
本发明实施例中提供的AGV拣货路径规划方法,首先获取当前订单并确定当前订单对应的一个目标AGV,当前订单中包含有多种货物;然后以目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、当前订单的目标位置为结束节点,构建各备选路径;停放位置包括当前订单的前一订单中的首次拣货位置;最后基于各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对TSP模型进行求解,确定各备选路径中的全局规划路径。该方法摒弃了现有的AGV针对单一种类的货物执行分拣任务的工作模式,而是针对一个订单中的多种货物依次进行分拣,如此可以提高货物的分拣效率,缩短AGV的行驶路程。而且,AGV在执行完成一个订单后的停放位置并非是停车区,而是前一订单中的首次拣货位置本,可以提高AGV的工作效率,节约重回停车区导致的时间成本和电耗成。此外,结合各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并以遗传算法对TSP模型进行求解的方式确定各备选路径中的全局规划路径,相比于现有的A*算法,其搜索效率大大提升,可以提升路径规划效率,进一步提高货物的分拣效率。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径,具体包括:
将所述各备选路径作为个体,将所述各备选路径的中间节点作为基因,并基于所述各备选路径的路径长度、路径转角以及路径拐点个数,确定个体适应度;
采用两个Flink集群,分别初始化得到第一种群和第二种群,并对所述第一种群的个体进行迭代更新得到第三种群,对所述第二种群的个体进行迭代更新得到第四种群;
从所述第三种群以及所述第四种群中确定最佳个体适应度对应的第一个体,将所述第一个体确定为所述全局规划路径。
具体地,本发明实施例中,在采用遗传算法,对TSP模型进行求解,确定各备选路径中的全局规划路径时,可以将各备选路径作为个体,将各备选路径的中间节点作为基因,并采用基于各备选路径的路径长度、路径转角以及路径拐点个数确定的目标函数确定每个个体的个体适应度。
此后,针对传统遗传算法容易陷入局部最优解,本发明实施例中,如图4所示,AGV拣货路径规划装置在接收到当前订单时,便启动AGV路径规划任务,发送任务消息到消息队列。第一Flink集群和第二Flink集群通过监听消息队列的方式触发遗传算法的实现。通过第一Flink集群初始化得到第一种群,并对第一种群的个体进行迭代更新得到第三种群。通过第二Flink集群初始化得到第二种群,并对第二种群的个体进行迭代更新得到第四种群。
第一种群可以通过第一Flink集群以随机初始化的方式得到,并可以通过第一Flink集群,采用第一类基因操作进行迭代更新,达到预设迭代次数,即可得到第三种群。第一类基因操作可以包括选择、交叉和变异中的至少一项,采用的操作概率可以预先给定,亦可以自适应调整,此处不作具体限定。预设迭代次数可以根据需要进行设置,例如可以设置为300次、500次、1000次等。
同样地,第二种群可以采用通过第二Flink集群以随机初始化的方式得到,并可以通过第二Flink集群,采用第二类基因操作进行迭代更新,达到预设迭代次数,即可得到第四种群。第二类基因操作也可以包括选择、交叉和变异中的至少一项,除此之外,还可以包括删除、插入以及逆转中的至少一项。删除可以通过删除算子实现,用以删除不符合要求的个体,如被障碍物阻断的备选路径对应的个体;插入可以通过插入算子实现,用以在个体的基因中插入新的基因;逆转可以通过逆转算子实现,用以将个体的基因进行逆转。
此后,可以从第三种群以及第四种群中确定出最佳个体适应度对应的第一个体。该第一个体为第五种群中的最佳个体,此时可以直接将该第一个体确定为全局规划路径,即实现了全局路径规划。
本发明实施例中,通过两个Flink集群,实现了通过遗传算法对TSP模型进行求解,解决了传统遗传算法容易陷入局部最优解的问题,使得到的全局规划路径更加准确。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述采用两个Flink集群,分别初始化得到第一种群和第二种群,具体包括:
采用第一Flink集群,初始化得到第一备选种群,并采用第二Flink集群,初始化得到第二备选种群;
基于所述第一备选种群的个体适应度方差,确定所述第一种群;
基于所述第二备选种群的每个个体与最佳个体适应度对应的第二个体之间的相似度均值,确定所述第二种群。
具体地,本发明实施例中,在采用两个Flink集群,分别初始化得到第一种群和第二种群时,可以先采用第一Flink集群,初始化得到第一备选种群,并采用第二Flink集群,初始化得到第二备选种群。第一备选种群以及第二备选种群均可以随机初始化得到。
此后,可以根据第一备选种群的个体适应度方差,确定第一种群。设第一备选种群的大小为n,即有n个个体,fi(i=1,2,…n)表示第一备选种群中每个个体的个体适应度,favg表示第一备选种群中所有个体的平均适应度,则第一备选种群的个体适应度方差可以表示为:
结合个体适应度方差,可以确定第一种群。例如,若S2>σ1,则表示第一备选种群满足种群多样性要求,此时可以将第一备选种群作为第一种群;否则,表示第一备选种群不满足种群多样性要求,因此可以从第一备选种群中随机挑选若干个体,并对其染色体重新进行生成,直到满足S2>σ1,此时第一备选种群即为第一种群。其中,σ1为第一阈值常数,可以根据需要进行设定。
对于第二种群,则可以根据第二备选种群的每个个体与最佳个体适应度对应的第二个体之间的相似度均值确定。设第二备选种群的大小为n,即有n个个体,Ci(i=1,2,…n)表示第二备选种群的第i个个体,Ci=(Si1,Si2,…Sim)表示第i个个体的染色体集合。Co=(So1,So2,…Som)表示第二备选种群中最佳个体适应度对应的第二个体的染色体集合。
第二备选种群中每个个体Ci与第二个体Co之间的相似度simi可采用欧式距离进行计算。最终求得第二备选种群的相似度均值可以表示为当simavg>σ2时,表示第二备选种群满足种群多样性要求,此时可以将第二备选种群确定为第二种群。否则,表示第二备选种群不满足种群多样性要求,此时从第二备选种群中随机挑选若干个体,并对其染色体重新进行生成,直到满足simavg>σ2,此时第二备选种群即为第二种群。其中,σ2为第二阈值常数,可以根据需要进行设定。
本发明实施例中,采用第一Flink集群以及第二Flink集群,在初始化得到第一种群以及第二种群的过程中,将个体适应度方差以及每个个体与最佳个体适应度对应的第二个体之间的相似度均值分别作为确定第一种群以及第二种群的标准,以保证第一种群以及第二种群满足个体多样性要求,进一步优化遗传算法,使遗传算法求解得到的结果更加准确。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述对所述第一种群的个体进行迭代更新得到第三种群,具体包括:
采用第一Flink集群的主节点,将所述第一种群划分为多个第一子种群,并采用所述第一Flink集群的任务节点分布式并行对每个第一子种群进行第一类基因操作,得到更新后的第一子种群;
采用所述主节点,对所有更新后的第一子种群进行汇合,得到第一新种群;
采用所述第一Flink集群对所述第一新种群迭代进行划分、第一类基因操作以及汇合,得到所述第三种群。
具体地,本发明实施例中,第一Flink集群以及第二Flink集群均可以包括一个主节点(ResourceManager)和多个任务节点(TaskManager)。例如,第一Flink集群以及第二Flink集群均可以包括10个任务节点,能够在较短时间内支持100~200台AGV针对每单10种货物的拣货路径规划。支持的AGV的具体台数以及货物的种类受仓库空间大小以及第一Flink集群和第二Flink集群中任务节点的数量和计算性能有关。
可以通过第一Flink集群对第一种群的个体进行迭代更新得到第三种群,在此过程中,如图5所示,可以先采用第一Flink集群的主节点,将第一种群划分为k个第一子种群,并将k个第一子种群发送至消息队列,以使监听消息队列的每个任务节点获取一个第一子种群。然后采用第一Flink集群的任务节点分布式并行对每个第一子种群进行第一类基因操作,以对第一子种群进行更新,得到更新后的第一子种群,并计算更新后的第一子种群的个体适应度,并将更新后的第一子种群及其个体适应度返回至消息队列。主节点将消息队列中的所有更新后的第一子种群进行汇合,得到第一新种群,在未达到迭代次数的条件下,迭代进行上述过程。最终,在达到迭代次数的条件下,得到的第一新种群即为第三种群。
主节点将消息队列中的所有更新后的第一子种群进行汇合得到第一新种群后,可以采用如下a或b两种策略中的一种,或者通过设定概率选取a或b的方式进行下一次迭代,以进行种群间的信息交换,进而增加种群的多样性和增强算法的全局寻优能力。
a.将k个更新后的第一子种群采用随机混洗的方式得到第一新种群,然后再从第一新种群中选取k个新的第一子种群分别进行下一次迭代。
b.将k个更新后的第一子种群分成两部分,从一部分更新后的第一子种群中选取最优的一半个体,然后从另一部分更新后的第一子种群中选取最差的一半个体,组成第一新种群。此后,再从第一新种群中选取k个新的第一子种群分别进行下一次迭代。
同样地,第二Flink集群的处理方式与第一Flink集群的处理方式相同,此处不再赘述。
本发明实施例中,采用第一Flink集群,将第一种群划分为多个第一子种群进行并行处理,可以加快遗传算法对全局规划路径的求解。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述采用所述第一Flink集群中的任务节点分布式并行对每个第一子种群进行第一类基因操作,具体包括:
对于所述第一Flink集群中的任一任务节点,采用所述任一任务节点,基于所述第一子种群中的任一个体的个体适应度,确定所述任一个体对应的激活函数;
基于所述任一个体的激活函数以及所述第一类基因操作的操作概率范围,确定所述任一个体对应的第一类基因操作的目标操作概率;
基于所述目标操作概率,对所述任一个体进行所述第一类基因操作。
具体地,本发明实施例中,在采用第一Flink集群中的任务节点分布式并行对每个第一子种群进行第一类基因操作时,可以先第一类基因操作采用的目标操作概率可以通过如下方法自适应确定,即对于第一Flink集群中的任一任务节点,可以采用该任一任务节点,基于第一子种群中的任一个体的个体适应度,确定该任一个体对应的激活函数。激活函数的形式可以是Sigmoid函数、Logistic函数、双曲正切(Hyperbolic tangent,Tanh)函数或线性修正单元(Rectified linear units,ReLu)激活函数等。
以激活函数的形式是Tanh函数为例,其曲线形式如图6所示。则任一个体对应的激活函数可以表示为:
其中,fi表示第i个个体的个体适应度,fiavg代表第一子种群的平均适应度。
此后,根据任一个体的激活函数以及第一类基因操作的操作概率范围,确定任一个体对应的第一类基因操作的目标操作概率。第一类基因操作可以包括选择、交叉以及变异,则每种操作均对应一个操作概率范围,该操作范围可以预先给定。例如[Ps_min,Ps_max]表示选择概率范围,Ps_min、Ps_max分别为选择概率的最小值、最大值,[Pc_min,Pc_max]表示交叉概率范围,Pc_min、Pc_max分别为交叉概率的最小值、最大值,[Pm_min,Pm_max]表示变异概率范围,Pm_min,Pm_max分别为变异概率的最小值、最大值。
任一个体对应的第一类基因操作的目标操作概率可以表示为:
其中,Ps为第i个个体的选择概率、Pc为第i个个体的交叉概率、Pm为第i个个体的变异概率。
本发明实施例中,引入激活函数实现自适应确定目标操作概率,可以使新个体产生的同时,保证种群进化不会对适应度高的个体产生破坏,进而可以保留精英个体,进一步实现对遗传算法的优化,保证了遗传算法求解的准确性。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径,之后还包括:
基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径。
具体地,本发明实施例中,由于遗传算法求出来的全局规划路径是静态的,在多个AGV行驶时,目标AGV容易遇到运动的其他AGV,此时便需要进行动态路径规划。本发明实施例中则采用动态窗口算法(Dynamic Window Approach,DWA)进行局部路径规划,进而得到目标AGV的局部规划路径。
DWA针对窗口区域内目标AGV的速度进行空间采样,并且模拟出目标AGV的运动轨迹。目标AGV的运动状态由目标AGV在t时刻的线速度vt和角速度wt来反馈,(vt,wt)表示目标AGV的轨迹。由于速度空间存在若干组的采样速度是可行的,因此通过评价函数在所有可行轨迹里可以选取最佳轨迹作为局部规划路径。在时间间隔Δt内,假设目标AGV作匀速直线运动,运动学模型为:
其中,(x,y)为目标AGV的坐标,vx为vt在x方向的分量,vy为vt在y方向的分量,θt为方位角。
本发明实施例中,评价函数用于局部路径规划,目标AGV应尽量避开障碍物,用最短时间到达局部规划路径的终点,可以选用现有的评价函数实现,此处不作具体限定。
本发明实施例中,使用DWA在全局规划路径的基础之上,进行动态的局部路径规划,从而避免目标AGV与其他运动中的AGV发生碰撞。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述动态窗口算法的动态窗口评价函数基于所述目标AGV的当前模拟速度信息的评价函数、所述目标AGV的模拟轨迹与所述目标AGV周围的静态障碍物之间的最近距离以及所述模拟轨迹的终点方向与所述全局规划路径上的目标点之间的方位角偏差确定,所述目标点为以所述目标AGV的当前位置为圆心、以目标距离为半径的圆周与所述全局规划路径的交点。
具体地,本发明实施例中,采用的动态窗口算法的动态窗口评价函数可以表示为:
G(v,w)=σ(α·goal(v,w,Gi)+β·obstdist(v,w,O)+γ·value(v,w))
其中,obstdist(v,w,O)为目标AGV的模拟轨迹与目标AGV周围的静态障碍物O之间的最近距离,value(v,w)为当前模拟速度信息的评价函数;σ为平滑系数;α、β、γ为加权系数。goal(v,w,Gi)为目标AGV的模拟轨迹的终点方向与全局规划路径上的目标点Gi之间的方位角偏差。目标点Gi是全局规划路径的前进方向上距离目标AGV的当前位置目标距离(R)的全局规划路径上的点。如图7所示,全局规划路径为SD,目标点为箭头的终点。可以理解的是,目标距离即为局部路径规划半径,可以根据目标AGV周围的静态障碍物的数量进行自适应调整。目标AGV周围的静态障碍物可以通过安装于目标AGV上的传感器检测得到。
此处,目标AGV的模拟轨迹的终点可以从全局规划路径上随机选取得到,从而使目标AGV在行驶过程中,既可以保持局部路径动态避障功能,又能保证目标AGV的实际路径不会偏离全局规划路径太远。
本发明实施例中,确定的评价函数可以避免动态窗口算法陷入局部最优,使得局部路径规划遵循全局规划路径的序列点,从而保证全局规划路径最佳。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径,具体包括:
在局部路径规划过程中,若所述目标AGV的当前位置的第一预设范围内存在多个第一类AGV,则控制所述多个第一类AGV停止运行,并按所述多个第一类AGV的序号由大到小的顺序依次重新对每个第一类AGV的全局规划路径进行局部路径规划,以使每个第一类AGV驶离所述第一预设范围。
具体地,本发明实施例中,由于DWA的动态窗口评价函数由三部分组成,α、β、γ这三项加权系数不好确定,在某些情况下选择的模拟轨迹忽略了β避障的重要性,最终得到的局部规划路径,有可能会发生动态碰撞事件。因此,本发明实施例中,当有多个第一类AGV进入到目标AGV的当前位置的第一预设范围内,则控制各第一类AGV停止运行,静止等待操作。然后,可以对第一预设范围内最大序号的第一类AGV的全局规划路径重新进行局部路径规划,以使最大序号的第一类AGV执行新的局部规划路径进行拣货并驶离第一预设范围。此后,继续对第一预设范围内新的最大序号的第一类AGV的全局规划路径重新进行局部路径规划,直至第一预设范围内无第一类AGV。
可以理解的是,第一预设范围可以理解为目标AGV的碰撞临界区,其范围可以根据需要进行设定,例如可以是目标AGV的当前位置周围预设半径R1范围内的区域。第一类AGV的序号可以是预先随机排序得到。
本发明实施例中,通过控制目标AGV的当前位置的第一预设范围内的多个第一类AGV停止运行按序号由大到小的顺序依次驶离第一预设范围,不仅可以避免第一类AGV与目标AGV相撞,还可以通过破坏死锁的方式使碰撞不可能发生。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,所述基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径,具体包括:
在局部路径规划过程中,若所述目标AGV的当前位置的第二预设范围内存在多个第二类AGV,则控制所述多个第二类AGV以第一加速度进行减速运行;
若所述目标AGV的当前位置的第三预设范围内存在多个第三类AGV,则控制所述多个第三类AGV以第二加速度进行减速运行;
其中,所述第二预设范围中任一点与所述目标AGV的距离均大于所述第一预设范围中任一点与所述目标AGV的距离,所述第三预设范围中任一点与所述目标AGV的距离均大于所述第二预设范围中任一点与所述目标AGV的距离,所述第一加速度大于所述第二加速度。
具体地,本发明实施例中,在局部路径规划过程中,若目标AGV的当前位置的第二预设范围内存在多个第二类AGV,则控制多个第二类AGV以第一加速度进行减速运行;若目标AGV的当前位置的第三预设范围内存在多个第三类AGV,则控制多个第三类AGV以第二加速度进行减速运行。如图8所示,第二预设范围可以是以目标AGV的当前位置为圆心,以R2为半径的圆与以R1(R2>R1)为半径的圆形成的圆环,第三预设范围可以是以目标AGV的当前位置为圆心,以R3为半径的圆与以R2(R3>R2)为半径的圆形成的圆环。
第一加速度大于第二加速度,第一加速度可以通过第二类AGV与目标AGV之间的距离进行确定,例如可以是r1 2a1。其中,r1为第二类AGV与目标AGV之间的距离,a1为初始加速度,为定值。
第二加速度可以通过第三类AGV与目标AGV之间的距离进行确定,例如可以是r2a2。其中,r2为第二类AGV与目标AGV之间的距离,a2为初始加速度,为定值。a1与a2可以相等,也可以不相等,此处不作具体限定。
图8中,若AGV1为目标AGV,则在半径R1的第一预设范围内,AGV8以及AGV7均为第一类AGV。先重新对AGV8的全局规划路径进行局部路径规划,并控制AGV8驶离第一预设范围。然后,重新对AGV7的全局规划路径进行局部路径规划,并控制AGV7驶离第一预设范围。在半径R1-R2的第二预设范围内,AGV5以及AGV6均为第二类AGV,则可以同时控制AGV5和AGV6以第一加速度进行减速运行。在半径R2-R3的第三预设范围内,AGV2、AGV3以及AGV4均为第三类AGV,则可以同时控制AGV2、AGV3以及AGV4以第二加速度进行减速运行。
本发明实施例中,采用阶梯式紧急控制策略,可以防止目标AGV与周围的其他AGV相撞。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划方法,该方法的仿真和验证均采用栅格法建立地图模型进行实现,此处不再赘述。
综上所述,本发明实施例中提供了一种基于Flink、DWA和遗传算法的大规模AGV拣货路径规划方法,首先,给出了一种AGV新的工作模式,即一个订单中的多种货物由一个AGV一次性拣选,并且在AGV拣货任务完成,将所有货架归位之后,AGV并不返回到停车区,而是停留在最后一个货架旁边,即首次拣货位置。这样做的好处是,由于访问时间局部性原理,刚刚访问的货物在接下来的订单中出现的可能性会比较高。这样就节省了AGV返回停车区的时间以及下次再从停车区到该货架的时间。其次,针对传统遗传算法无法保证种群个体的多样性以及容易陷入局部最优解的缺陷,本发明实施例中提出使用两个Flink集群采用两种方式并行初始化两个种群,同时进行最优个体的计算。第一Flink集群使用个体适应度方差判断种群多样性,并采取自适应概率进行选择、交叉和变异等第一类基因操作。第二Flink集群使用个体与最优个体适应度的相似度的平均值判断种群多样性,并采取插入、删除及逆转算子进行最优个体的求解。其次,为了加快遗传算法全局路径规划问题的求解,本发明实施例中将种群设置得比较大,然后将种群划分为多个子种群分发给第一Flink集群以及第二Flink集群分别进行并行化计算,最终将种群进行汇合,进行下一次迭代操作。最后,由于遗传算法求出来的路径是静态的全局规划路径,在多个AGV行驶时,容易遇到运动的其他AGV,此时采用动态窗口算法进行动态的局部路径规划。又由于DWA的动态窗口评价函数由三部分组成,α、β、γ这3项加权系数不好确定,在某些情况下选择的模拟轨迹忽略了β避障的重要性,最终得到的局部规划路径,有可能会发生动态碰撞事件。此时本发明实施例中对于大规模AGV系统提供一种动态避障方法,即静止等待和按序重启策略。在最后一道关卡保证了大规模AGV拣货过程中不会发生碰撞事件。
如图9所示,在上述实施例的基础上,本发明实施例中提供了一种AGV拣货路径规划系统,包括:
获取模块91,用于获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;
备选路径构建模块92,用于以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;
全局路径规划模块93,用于基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,所述全局路径规划模块,具体用于:
将所述各备选路径作为个体,将所述各备选路径的中间节点作为基因,并基于所述各备选路径的路径长度、路径转角以及路径拐点个数,确定个体适应度;
采用两个Flink集群,分别初始化得到第一种群和第二种群,并对所述第一种群的个体进行迭代更新得到第三种群,对所述第二种群的个体进行迭代更新得到第四种群;
从所述第三种群以及所述第四种群中确定最佳个体适应度对应的第一个体,将所述第一个体确定为所述全局规划路径。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,所述全局路径规划模块,具体用于:
采用第一Flink集群,初始化得到第一备选种群,并采用第二Flink集群,初始化得到第二备选种群;
基于所述第一备选种群的个体适应度方差,确定所述第一种群;
基于所述第二备选种群的每个个体与最佳个体适应度对应的第二个体之间的相似度均值,确定所述第二种群。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,所述全局路径规划模块,具体用于:
采用第一Flink集群的主节点,将所述第一种群划分为多个第一子种群,并采用所述第一Flink集群的任务节点分布式并行对每个第一子种群进行第一类基因操作,得到更新后的第一子种群;
采用所述主节点,对所有更新后的第一子种群进行汇合,得到第一新种群;
采用所述第一Flink集群对所述第一新种群迭代进行划分、第一类基因操作以及汇合,得到所述第三种群。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,所述全局路径规划模块,具体用于:
对于所述第一Flink集群中的任一任务节点,采用所述任一任务节点,基于所述第一子种群中的任一个体的个体适应度,确定所述任一个体对应的激活函数;
基于所述任一个体的激活函数以及所述第一类基因操作的操作概率范围,确定所述任一个体对应的第一类基因操作的目标操作概率;
基于所述目标操作概率,对所述任一个体进行所述第一类基因操作。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,还包括局部路径规划模块,用于:
基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,所述动态窗口算法的动态窗口评价函数基于所述目标AGV的当前模拟速度信息的评价函数、所述目标AGV的模拟轨迹与所述目标AGV周围的静态障碍物之间的最近距离以及所述模拟轨迹的终点方向与所述全局规划路径上的目标点之间的方位角偏差确定,所述目标点为以所述目标AGV的当前位置为圆心、以目标距离为半径的圆周与所述全局规划路径的交点。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,所述局部路径规划模块,具体用于:
在局部路径规划过程中,若所述目标AGV的当前位置的第一预设范围内存在多个第一类AGV,则控制所述多个第一类AGV停止运行,并按所述多个第一类AGV的序号由大到小的顺序依次重新对每个第一类AGV的全局规划路径进行局部路径规划,以使每个第一类AGV驶离所述第一预设范围。
在上述实施例的基础上,本发明实施例中提供的AGV拣货路径规划系统,所述局部路径规划模块,具体用于:
在局部路径规划过程中,若所述目标AGV的当前位置的第二预设范围内存在多个第二类AGV,则控制所述多个第二类AGV以第一加速度进行减速运行;
若所述目标AGV的当前位置的第三预设范围内存在多个第三类AGV,则控制所述多个第三类AGV以第二加速度进行减速运行;
其中,所述第二预设范围中任一点与所述目标AGV的距离均大于所述第一预设范围中任一点与所述目标AGV的距离,所述第三预设范围中任一点与所述目标AGV的距离均大于所述第二预设范围中任一点与所述目标AGV的距离,所述第一加速度大于所述第二加速度。
具体地,本发明实施例中提供的AGV拣货路径规划系统中各模块的作用与上述方法类实施例中各步骤的操作流程是一一对应的,实现的效果也是一致的,具体参见上述实施例,本发明实施例中对此不再赘述。
图10示例了一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(Processor)110、通信接口(Communications Interface)120、存储器(Memory)130和通信总线140,其中,处理器110,通信接口120,存储器130通过通信总线140完成相互间的通信。处理器110可以调用存储器130中的逻辑指令,以执行上述各实施例中提供的AGV拣货路径规划方法,该方法包括:获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
此外,上述的存储器130中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各实施例中提供的AGV拣货路径规划方法,该方法包括:获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例中提供的AGV拣货路径规划方法,该方法包括:获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种AGV拣货路径规划方法,其特征在于,包括:
获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;
以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;
基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
2.根据权利要求1所述的AGV拣货路径规划方法,其特征在于,所述采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径,具体包括:
将所述各备选路径作为个体,将所述各备选路径的中间节点作为基因,并基于所述各备选路径的路径长度、路径转角以及路径拐点个数,确定个体适应度;
采用两个Flink集群,分别初始化得到第一种群和第二种群,并对所述第一种群的个体进行迭代更新得到第三种群,对所述第二种群的个体进行迭代更新得到第四种群;
从所述第三种群以及所述第四种群中确定最佳个体适应度对应的第一个体,将所述第一个体确定为所述全局规划路径。
3.根据权利要求2所述的AGV拣货路径规划方法,其特征在于,所述采用两个Flink集群,分别初始化得到第一种群和第二种群,具体包括:
采用第一Flink集群,初始化得到第一备选种群,并采用第二Flink集群,初始化得到第二备选种群;
基于所述第一备选种群的个体适应度方差,确定所述第一种群;
基于所述第二备选种群的每个个体与最佳个体适应度对应的第二个体之间的相似度均值,确定所述第二种群。
4.根据权利要求2所述的AGV拣货路径规划方法,其特征在于,所述对所述第一种群的个体进行迭代更新得到第三种群,具体包括:
采用第一Flink集群的主节点,将所述第一种群划分为多个第一子种群,并采用所述第一Flink集群的任务节点分布式并行对每个第一子种群进行第一类基因操作,得到更新后的第一子种群;
采用所述主节点,对所有更新后的第一子种群进行汇合,得到第一新种群;
采用所述第一Flink集群对所述第一新种群迭代进行划分、第一类基因操作以及汇合,得到所述第三种群。
5.根据权利要求4所述的AGV拣货路径规划方法,其特征在于,所述采用所述第一Flink集群中的任务节点分布式并行对每个第一子种群进行第一类基因操作,具体包括:
对于所述第一Flink集群中的任一任务节点,采用所述任一任务节点,基于所述第一子种群中的任一个体的个体适应度,确定所述任一个体对应的激活函数;
基于所述任一个体的激活函数以及所述第一类基因操作的操作概率范围,确定所述任一个体对应的第一类基因操作的目标操作概率;
基于所述目标操作概率,对所述任一个体进行所述第一类基因操作。
6.根据权利要求1-5中任一项所述的AGV拣货路径规划方法,其特征在于,所述采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径,之后还包括:
基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径。
7.根据权利要求6所述的AGV拣货路径规划方法,其特征在于,所述动态窗口算法的动态窗口评价函数基于所述目标AGV的当前模拟速度信息的评价函数、所述目标AGV的模拟轨迹与所述目标AGV周围的静态障碍物之间的最近距离以及所述模拟轨迹的终点方向与所述全局规划路径上的目标点之间的方位角偏差确定,所述目标点为以所述目标AGV的当前位置为圆心、以目标距离为半径的圆周与所述全局规划路径的交点。
8.根据权利要求6所述的AGV拣货路径规划方法,其特征在于,所述基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径,具体包括:
在局部路径规划过程中,若所述目标AGV的当前位置的第一预设范围内存在多个第一类AGV,则控制所述多个第一类AGV停止运行,并按所述多个第一类AGV的序号由大到小的顺序依次重新对每个第一类AGV的全局规划路径进行局部路径规划,以使每个第一类AGV驶离所述第一预设范围。
9.根据权利要求8所述的AGV拣货路径规划方法,其特征在于,所述基于动态窗口算法,对所述全局规划路径进行局部路径规划,得到所述目标AGV的局部规划路径,具体包括:
在局部路径规划过程中,若所述目标AGV的当前位置的第二预设范围内存在多个第二类AGV,则控制所述多个第二类AGV以第一加速度进行减速运行;
若所述目标AGV的当前位置的第三预设范围内存在多个第三类AGV,则控制所述多个第三类AGV以第二加速度进行减速运行;
其中,所述第二预设范围中任一点与所述目标AGV的距离均大于所述第一预设范围中任一点与所述目标AGV的距离,所述第三预设范围中任一点与所述目标AGV的距离均大于所述第二预设范围中任一点与所述目标AGV的距离,所述第一加速度大于所述第二加速度。
10.一种AGV拣货路径规划系统,其特征在于,包括:
获取模块,用于获取当前订单并确定所述当前订单对应的一个目标AGV,所述当前订单中包含有多种货物;
备选路径构建模块,用于以所述目标AGV的停放位置为起始节点、各种货物的存放位置为中间节点、所述当前订单的目标位置为结束节点,构建各备选路径;所述停放位置包括所述当前订单的前一订单中的首次拣货位置;
全局路径规划模块,用于基于所述各备选路径的路径长度、路径转角以及路径拐点个数,建立TSP模型,并采用遗传算法,对所述TSP模型进行求解,确定所述各备选路径中的全局规划路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210887855.5A CN115421448A (zh) | 2022-07-26 | 2022-07-26 | Agv拣货路径规划方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210887855.5A CN115421448A (zh) | 2022-07-26 | 2022-07-26 | Agv拣货路径规划方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115421448A true CN115421448A (zh) | 2022-12-02 |
Family
ID=84196291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210887855.5A Pending CN115421448A (zh) | 2022-07-26 | 2022-07-26 | Agv拣货路径规划方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115421448A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115646818A (zh) * | 2022-12-28 | 2023-01-31 | 江苏智联天地科技有限公司 | 一种agv智能分拣系统 |
CN117093009A (zh) * | 2023-10-19 | 2023-11-21 | 湖南睿图智能科技有限公司 | 一种基于机器视觉的物流agv小车导航控制方法及系统 |
-
2022
- 2022-07-26 CN CN202210887855.5A patent/CN115421448A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115646818A (zh) * | 2022-12-28 | 2023-01-31 | 江苏智联天地科技有限公司 | 一种agv智能分拣系统 |
CN117093009A (zh) * | 2023-10-19 | 2023-11-21 | 湖南睿图智能科技有限公司 | 一种基于机器视觉的物流agv小车导航控制方法及系统 |
CN117093009B (zh) * | 2023-10-19 | 2024-02-09 | 湖南睿图智能科技有限公司 | 一种基于机器视觉的物流agv小车导航控制方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115421448A (zh) | Agv拣货路径规划方法及系统 | |
CN107169608B (zh) | 多无人机执行多任务的分配方法及装置 | |
US20220317695A1 (en) | Multi-agv motion planning method, device and system | |
CN107103164B (zh) | 无人机执行多任务的分配方法及装置 | |
Dou et al. | Genetic scheduling and reinforcement learning in multirobot systems for intelligent warehouses | |
CN109947120B (zh) | 仓储系统中的路径规划方法 | |
CN111240211B (zh) | 一种无人机群动态回收方法 | |
CN113359702B (zh) | 一种基于水波优化-禁忌搜索的智能仓库agv作业优化调度方法 | |
CN108897316B (zh) | 一种基于信息素导航的集群仓储机器人系统控制方法 | |
CN115237135A (zh) | 一种基于冲突的移动机器人路径规划方法及系统 | |
CN109581987B (zh) | 一种基于粒子群算法的agv调度路径规划方法及系统 | |
CN114578772B (zh) | 一种agv集群控制系统设计框架及方法 | |
Li et al. | Task selection by autonomous mobile robots in a warehouse using deep reinforcement learning | |
CN112001309A (zh) | 基于无人机集群的目标搜索方法、装置、设备及存储介质 | |
CN113311829A (zh) | 一种基于动态时间窗冲突搜索的多机器人路径规划方法 | |
CN111626516B (zh) | 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法 | |
CN115494873A (zh) | 时序约束下一种基于蒙特卡洛树搜索架构的异构多无人机协同任务分配方法 | |
Hani et al. | Simulation based optimization of a train maintenance facility | |
CN116679636A (zh) | 一种物流搬运机器人任务调度系统及方法 | |
CN111047249A (zh) | 一种货架重新定位方法及系统 | |
CN116523221A (zh) | 一种智能仓储拣选任务的优化调度方法及系统 | |
CN112987713A (zh) | 自动驾驶设备的控制方法、装置及存储介质 | |
CN115409448A (zh) | 仓储调度决策方法、装置、终端设备以及存储介质 | |
WO2022142654A1 (zh) | 一种放置位置的获取方法、模型的训练方法以及相关设备 | |
US20220300002A1 (en) | Methods and systems for path planning in a known environment |
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 |