CN113256125B - 异构机器人集群任务分配方法、系统、设备及存储介质 - Google Patents
异构机器人集群任务分配方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN113256125B CN113256125B CN202110593648.4A CN202110593648A CN113256125B CN 113256125 B CN113256125 B CN 113256125B CN 202110593648 A CN202110593648 A CN 202110593648A CN 113256125 B CN113256125 B CN 113256125B
- Authority
- CN
- China
- Prior art keywords
- robot
- task
- allocated
- tasks
- time
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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/043—Optimisation of two dimensional placement, e.g. cutting of clothes or wood
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- 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/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本发明属于人工智能和机器人协同控制领域,公开了一种异构机器人集群任务分配方法、系统、设备及存储介质,包括以下步骤:获取各待分配任务及异构机器人集群内各机器人的基本信息;基本信息包括机器人的数量、待分配任务的数量、各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间;获取各机器人服务各待分配任务的耗时时间;根据基本信息以及各机器人服务各待分配任务的耗时时间,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。可对各机器人工作量、待分配任务完成顺序进行合理调度分配,提高服务作业效率和质量,同时更切合应用场景,符合实际需要。
Description
技术领域
本发明属于人工智能和机器人协同控制领域,涉及一种异构机器人集群任务分配方法、系统、设备及存储介质。
背景技术
随着科技进步,服务型机器人正逐渐融入我们日常生活中,在越来越多的公共场合中得到应用,帮助人们摆脱繁重的工作。在大规模协同任务中,由于单机器人难以同时满足执行任务所需的能力、质量和效率等需求,因此需要多种异构机器人协同完成整个任务。在进行多机器人协同时,首先需要考虑任务属性和机器人集群属性划分子任务,并将子任务分配给机器人集群,以便实现机器人合理配合,高效完成任务。这就是异构机器人任务分配问题。
为解决多机器人协同问题,有研究学者提出使用拍卖法,将各机器人完成任务的耗费视作代价,通过市场竞拍的原理将任务分配给各机器人。但是,由于在大规模任务分配中,涉及多种异构机器人以及大量不同种类任务,使用拍卖法进行任务分配求解存在极大的随机性,难以得到合理的解,所以这类方法应用较少。还有学者提出整数规划、图搜索或者树搜索等静态任务分配算法。但是,这类方法将分配任务看作是确定性的场景,而在大型公共场合进行任务作业,存在大量随机因素干扰,使得求解基于的数据往往与实际场景不符,这类方法脱离实际应用场景。此外,上述方法一般也不考虑多种异构机器人,也不会对任务类型进行明确限制。在实际应用中,任务往往有多种类型,不同任务之间也有顺序约束,例如清洁任务中,扫地应当在拖地之前完成。此外,不同的不同任务也有不同的工作量,例如清洁任务中大房间清洁量要比小房间多。
综上所述,现有机器人任务分配算法大多没有考虑工作量、机器人工作效率和清洁任务顺序约束,导致分配结果与机器人任务分配需求不符,无法实际应用。
发明内容
本发明的目的在于克服上述现有技术中,现有机器人任务分配结果与机器人任务分配需求不符的缺点,提供一种异构机器人集群任务分配方法、系统、设备及存储介质。
为达到上述目的,本发明采用以下技术方案予以实现:
本发明第一方面,一种异构机器人集群任务分配方法,包括以下步骤:
获取各待分配任务及异构机器人集群内各机器人的基本信息;基本信息包括机器人的数量、待分配任务的数量、各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间;
获取各机器人服务各待分配任务的耗时时间;
根据基本信息以及各机器人服务各待分配任务的耗时时间,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
本发明异构机器人集群任务分配方法进一步的改进在于:
所述各机器人在任意两待分配任务间的移动时间通过如下方式获得:
获取任意两待分配任务间的最短移动路径,以及各机器人的移动速度;
根据任意两待分配任务间的最短移动路径,以及各机器人的移动速度,得到各机器人在任意两待分配任务间的移动时间。
所述获取各机器人服务各待分配任务的耗时时间的具体方法为:
获取各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间;
根据各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间,得到各机器人服务各待分配任务的耗时时间。
所述获取各机器人服务各待分配任务的理论耗时时间的具体方法为:
获取各待分配任务的任务类型以及工作量,以及各机器人服务各任务类型的待分配任务的服务效率;
根据各待分配任务的任务类型以及工作量,以及各机器人服务各任务类型的待分配任务的服务效率,得到各机器人服务各待分配任务的理论耗时时间。
所述根据各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间,得到各机器人服务各待分配任务的耗时时间的具体方法为:
根据各机器人服务各待分配任务的理论耗时时间及各机器人服务各待分配任务的若干历史耗时时间,通过下式得到各机器人服务各待分配任务的耗时时间:
所述异构机器人集群任务分配鲁棒优化模型包括优化变量、优化目标及约束条件;
其中,优化变量为:
X={Xijk|i∈{0,1,2,...,N},j∈{0,1,2,...,N},k∈{1,2,...,K}}
Y={Yik|i∈{0,1,2,...,N},k∈{1,2,...,K}}
U={Ui|i∈{0,1,2,...,N}}
其中Xijk∈{0,1},当机器人k分配先服务待分配任务i后服务待分配任务j时,Xijk=1,否则Xijk=0;Yik∈0,1,当机器人k分配服务待分配任务i时,Yik=1,否则Yik=0;表示待分配任务i服务开始时间;
优化目标为:minCmax,其中,Cmax为服务所有待分配任务的总花费时间;
约束条件包括优化变量的取值范围约束、服务所有待分配任务的总花费时间约束、机器人服务任务能力约束、机器人数量约束、待分配任务均被分配约束、机器人完成仓库约束、机器人子回环消除约束、待分配任务服务开始时间约束以及待分配任务的服务顺序约束。
所述通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序的具体方法为:
采用混合整数规划求解器Gurobi或Cplex求解预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
本发明第二方面,一种异构机器人集群任务分配系统,包括:
第一获取模块,用于获取各待分配任务及异构机器人集群内各机器人的基本信息;基本信息包括机器人的数量、待分配任务的数量、各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间;
第二获取模块,用于获取各机器人服务各待分配任务的耗时时间;
分配模块,用于根据基本信息以及各机器人服务各待分配任务的耗时时间,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
本发明第三方面,一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述异构机器人集群任务分配方法的步骤。
本发明第四方面,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述异构机器人集群任务分配方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明异构机器人集群任务分配方法,基于异构机器人集群任务分配鲁棒优化模型对异构机器人集群进行任务分配,该异构机器人集群任务分配鲁棒优化模型充分考虑各机器人的服务能力、待分配任务的服务顺序、各机器人在任意两待分配任务间的移动时间以及各机器人服务各待分配任务的耗时时间,在待分配任务的服务顺序和各机器人的服务能力的约束下,在不确定环境中使任务耗时最小的同时满足约束限制,模型求解结果为各机器人的待服务任务及待服务任务的服务顺序,能为机器人集群分配待分配任务以及待分配任务服务先后顺序,可对各机器人工作量、待分配任务完成顺序进行合理调度分配,提高服务作业效率和质量,同时更切合应用场景,符合实际需要。
进一步的,基于历史耗时时间优化各机器人服务各待分配任务的理论耗时时间,充分考虑环境中的不确定因素对于机器人服务各待分配任务的耗时时间带来的影响,优化结果较为保守鲁棒,可避免突发情况对任务产生巨大扰动,提高了系统整体的鲁棒性。
附图说明
图1为本发明的异构机器人集群任务分配方法流程框图;
图2为本发明实施例的房屋室内平面以及清洁区域分布图;
图3为本发明实施例的机器人1和2的具体执行路径图;
图4为本发明实施例的机器人3和4的具体执行路径图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图对本发明做进一步详细描述:
参见图1,本发明一实施例中,提供一种异构机器人集群任务分配方法,本实施例中,以清洁任务作为待分配任务进行说明。具体的,该异构机器人集群任务分配方法可对清洁任务工作量、工作顺序进行明确约束限制,可充分考虑清洁任务中不确定随机因素影响的全场景异构机器人集群进行任务分配的方法。首先,该方法在清洁任务和机器人属性下构建约束,依据历史耗时时间对不确定随机因素构建优化模型,然后对模型求解并将任务分配给机器人集群。
具体的,该异构机器人集群任务分配方法,包括以下步骤。
第一步:获取各待分配任务及异构机器人集群内各机器人的基本信息;基本信息包括机器人的数量、待分配任务的数量、各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间。
具体的,第一步包括以下过程:
步骤A1:确定异构机器人集群内的机器人总数K,待分配的清洁任务总数N。
步骤A2:建立异构机器人集合R={rk|k=1,2,...,K},其中rk表示第k个机器人;建立异构清洁任务集合J={Ji|i=1,2,...N},其中Ji表示第i个清洁任务。优选的,为了模型构建方便,额外增设任务0表示机器人的仓库,所有机器人均需要从仓库中出发并在完成所有任务后返回仓库。
步骤A3:根据清洁任务不同,建立清洁任务之间的服务顺序集合P={Pi,j|i∈{1,2,...,N},j∈{1,2,...,N}},其中Pi,j表示清洁任务i和清洁任务j之间的先后顺序,并且Pi,j∈{0,1},当Pi,j=1时任务i需要在任务j之前完成,当Pi,j=0时任务i与任务j没有先后顺序约束。
其中,任务的服务顺序需要事先安排好,下面对其进行说明。
对于一个清洁区域有扫地、拖地和消毒这三种任务,需要对清洁区域先扫地再拖地最后消毒。则在集合P中设置P扫地,拖地=1,P拖地,消毒=1和P扫地,消毒=1,其余各组合设置默认值为0。
步骤A4:根据机器人类型和清洁任务类型,建立机器人的服务能力集合B={Bi,k|i∈{1,2,...,N},k∈{1,2,...,K}},并且Bi,k∈{0,1},其中,Bi,k表示清洁任务i能否被机器人k完成,当Bi,k=1时机器人k能够完成清洁任务i,反之,则机器人k不能完成清洁任务i。
下面对其进行说明,对于清洁区域有扫地、拖地和消毒三个任务并分别用任务1、2、3表示,有三个机器人分配能完成扫地、拖地和消毒任务并用机器人1、2、3表示。则在集合B中设置B任务1,机器人1=1,B任务2,机器人2=1,B任务3,机器人3=1,除此之外组合为Bi,k=0。
步骤A5:各机器人在任意两待分配任务间的移动时间通过如下方式获得:获取任意两待分配任务间的最短移动路径,以及各机器人的移动速度;根据任意两待分配任务间的最短移动路径,以及各机器人的移动速度,得到各机器人在任意两待分配任务间的移动时间。具体的,根据清洁区域平面户型图、清洁任务位置坐标以及实际环境因素,确定任意两待分配任务间的最短移动路径,结合机器人移动速度得到机器人在任意两清洁任务之间的移动时间集合T={Ti,j,k|i∈{0,1,2,...,N},j∈{0,1,2,...,N},k∈{1,2,...,K}},其中,Ti,j,k表示机器人k从清洁任务i到清洁任务j所用时间,并且
经过上述步骤,确定各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间,即机器人服务能力集合B、服务顺序集合P以及移动时间集合T。
第二步:获取各机器人服务各待分配任务的耗时时间。
具体的,所述获取各机器人服务各待分配任务的耗时时间的具体方法为:获取各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间;根据各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间,得到各机器人服务各待分配任务的耗时时间。
其中,获取各机器人服务各待分配任务的理论耗时时间的具体方法为:获取各待分配任务的任务类型以及工作量,以及各机器人服务各任务类型的待分配任务的服务效率;根据各待分配任务的任务类型以及工作量,以及各机器人服务各任务类型的待分配任务的服务效率,得到各机器人服务各待分配任务的理论耗时时间。具体的,根据清洁任务类型以及清洁区域大小,建立理论清洁任务耗时集合D={Di,k|i∈{1,2,...,N},k∈{1,2,...,K}},其中Di,k表示机器人k完成清洁任务i理论需要时间,并且
计算清洁任务的理论耗时时间需要该清洁任务的清洁面积大小(平方米)以及能够完成该清洁任务的机器人服务效率(平米/分钟),计算方式如下:
其中,Ai表示清洁任务i的面积,Ek为机器人k的服务效率,这些在数据集中给出;机器人服务效率Ek为产品在实验室环境中测试得到,是理想情况下的清洁效率。
其中,根据各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间,得到各机器人服务各待分配任务的耗时时间的具体方法为:根据各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间,通过下式得到得到各机器人服务各待分配任务的耗时时间:
步骤B1:清洁任务耗时不确定集合中/>是独立分布的,其中,任意两任务之间耗时时间/>和/>都没有相关性;机器人k服务清洁任务i的耗时时间/>表示在实际清洁任务过程中由于环境等随机性因素导致的同理论时间Di,k的偏差,偏差值/>由s次实际清洁任务的耗时同理论时间Di,k的偏差构造的情景向量表示,将情景向量结合随机不确定集合Γ构造耗时时间不确定集合/>
第三步:根据基本信息以及各机器人服务各待分配任务的耗时时间,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
其中,预设的异构机器人集群任务分配鲁棒优化模型通过如下方式构建。基于异构机器人集合R、清洁任务集合J、服务顺序集合P、机器人服务能力集合B、移动时间集合T以及耗时时间不确定集合建立基于混合整数线性规划和鲁棒优化的异构机器人集群任务分配鲁棒优化模型,具体方法为:
步骤C1:建立异构机器人集群任务分配鲁棒优化模型的优化变量集合:X={Xijk|i∈{0,1,2,...,N},j∈{0,1,2,...,N},k∈{1,2,...,K}},其中Xijk∈{0,1},若机器人k指派了先完成清洁任务i后接着完成清洁任务j则Xijk=1,否则Xijk=0;Y={Yik|i∈{0,1,2,...,N},k∈{1,2,...,K}},其中Yik∈{0,1},若机器人k指派完成清洁任务i则Yik=1,否则Yik=0;U={Ui|i∈{0,1,2,...,N}},其中表示清洁任务i开始时间;Cmax表示完成所有任务总共花费的时间。
其中,Xijk和Yik是整数变量,只能取值0或者1,是主要的优化决策变量;Ui和Cmax是连续实数变量,其值依据Xijk和Yik变量约束产生。
步骤C2:建立异构机器人集群任务分配鲁棒优化模型的优化目标:
minCmax
该优化目标的目的是将整个清洁任务时间最小化。
步骤C3:建立异构机器人集群任务分配鲁棒优化模型的约束条件:
1)优化变量的取值范围约束:
2)服务所有待分配任务的总花费时间约束:
任务分配目标需要完成最后清洁任务时的时刻,也即所有任务完成时最晚的时刻;该约束将Cmax约束大于等于所有任务完成的时刻,即Cmax表示完成整个清洁任务总共花费的时间。
3)机器人服务任务能力约束:
对清洁任务没有服务能力的机器人,Yi,k=0即不能给该机器人i分配任务k。
4)机器人数量约束:
所有机器人都应该被分配出去,不存在闲置的机器人。
5)待分配任务均被分配约束:
每个清洁任务只能被一个机器人服务。
6)机器人完成仓库约束:
所有机器人完成各自最后的清洁任务后都要返回仓库进行维护。
7)机器人子回环消除约束:
消除任务分配中子路径,来自车辆路径规划模型。
8)待分配任务服务开始时间约束:
Ui+Di,k+Ti,j,a≤Uj+M(1-Xi,j,k)
约束某机器人完成一组任务时,后置任务应当在前置任务完成后才开始。
9)待分配任务的服务顺序约束:
Uj≥Ui
Uj≥Ui+(Di,a+Ti,j,a)·(Yi,a+Yj,b-1)
约束具有先后顺序的任务,后面的任务应当在前置任务之前完成。
使用不确定集合:
由于原确定性约束都仅包含耗时时间一个不确定参数,使用Soyster提出的鲁棒模型将不确定集引入模型中后,对于模型中服务所有待分配任务的总花费时间约束、待分配任务服务开始时间约束以及待分配任务的服务顺序约束,具有如下不等式:
根据Γ定义,将supγ∈ΓγTDj·及其对偶形式采用如下模型表示:
步骤C5:将优化变量、优化目标和约束条件组合在一起,得到异构机器人集群任务分配鲁棒优化模型:
minCmax
Uj≥Ui
其中,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序的具体方法为:采用混合整数规划求解器Gurobi或Cplex求解预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
具体的,通过求解异构机器人集群任务分配鲁棒优化模型,得到优化变量X和Y的值,进而得到各机器人分配的清洁任务以及各清洁任务服务先后顺序,将优化结果中清洁任务按顺序分配给各机器人执行。
综上,本发明提供一种异构机器人集群任务分配方法,具体为,基于混合整数线性规划和鲁棒优化的异构机器人集群任务分配算法。以清洁任务作为待分配任务,该方法包括以下步骤:确定机器人总数K,清洁任务总数N;建立异构机器人集合R以及异构清洁任务集合J;建立清洁任务顺序约束集合P;机器人服务能力集合B;建立理论清洁任务理论耗时集合D;建立机器人清洁任务之间移动时间集合T;建立清洁任务耗时集合以及异构机器人集群任务分配鲁棒优化模型;求解异构机器人集群任务分配鲁棒优化模型,根据求解结果将清洁任务分配给机器人。
本发明异构机器人集群任务分配方法,基于异构机器人集群任务分配鲁棒优化模型对异构机器人集群进行任务分配,该异构机器人集群任务分配鲁棒优化模型充分考虑各机器人的服务能力、待分配任务的服务顺序、各机器人在任意两待分配任务间的移动时间以及各机器人服务各待分配任务的耗时时间,在待分配任务的服务顺序和各机器人的服务能力的约束下,在不确定环境中使清洁耗时最小的同时满足约束限制,模型求解结果为各机器人的待服务任务及待服务任务的服务顺序,能为机器人集群分配待分配任务以及待分配任务服务先后顺序,可对各机器人工作量、待分配任务完成顺序进行合理调度分配,提高服务作业效率和质量,同时更切合应用场景,符合实际需要。
同时,基于历史耗时时间优化各机器人服务各待分配任务的理论耗时时间,充分考虑环境中的不确定因素对于机器人服务各待分配任务的耗时时间带来的影响,优化结果较为保守鲁棒,可避免突发情况对任务产生巨大扰动,提高了系统整体的鲁棒性。基于整数线性规划和鲁棒优化算法改进而来,包含为清洁机器人任务分配设计的数学模型和鲁棒优化模型,应用场景广泛、易于部署应用,具有广阔应用前景。
以下以一模拟的清洁机器人集群的任务分配问题为例说明本发明异构机器人集群任务分配方法。
有某房屋室内平面布局图以及标注好的清洁区域,需要对所有清洁区域进行扫地和拖地两种不同的清洁,扫地应当先于拖地任务;清洁机器人集群有四个两种异构机器人,需要对清洁机器人进行清洁任务分配以使整体清洁任务耗时最短;房屋室内平面图以及清洁区域分布见图2。图2使用线条划分不同的清洁区域并用标注数字,取各清洁区域中心作为计算清洁任务之间路程的依据。清洁区域的面积作为计算清洁时间的依据。各清洁区域面积如表1所示;机器人集群的参数如表2所示;其中清洁效率为清洁机器人单位时间完成清洁面积大小,用来计算理论清洁任务耗时;由于是仿真环境,没有历史清洁时间作为情景向量,因此,以各Di,k的5%最大偏移程度随机生成10组数据,作为10组历史数据生成以构建异构机器人集群任务分配鲁棒优化模型。
表1各清洁区域面积表
清洁区域序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
面积(平米) | 25 | 11 | 7.5 | 1 | 18 | 8 | 7 | 2 |
表2机器人集群的参数表
清洁机器人1 | 清洁机器人2 | 清洁机器人3 | 清洁机器人4 | |
任务类型 | 扫拖一体 | 扫拖一体 | 擦地 | 擦地 |
适用面积(m2) | 150 | 200 | 100 | 100 |
续航时间(h) | 2.5 | 3.0~3.5 | 2.0 | 2.5~3.5 |
电池容量(mA) | 3200 | 5200 | 2150 | 2300 |
移动速度(m/s) | 0.2 | 0.2 | 0.2 | 0.2 |
清洁效率(m2/s) | 0.016 | 0.023 | 0.04 | 0.07 |
执行步骤A1,得到机器人总数K=4,任务点总数N=16。
执行步骤A2,建立机器人集合R={rk|k∈{1,2,...,4}};建立任务点集合J={Ji|i∈{1,2,...,16}};其中i∈{1,2,...,8}为各清洁区域的扫地任务,i∈{9,10,...,16}为各清洁区域的拖地任务。
执行步骤A3,根据本例中清洁任务,设定;P1,9=1,P2,10=1,P3,11=1,P4,12=1,P5,13=1,P6,14=1,P7,15=1,P8,16=1,其余组合为0。
执行步骤A4,根据本例中机器人清洁效率和各清洁区域面积,计算清洁任务耗时集合D,计算结果如表3所示,为了直观展示以清洁区域作为标志,表中数字为理论上个各清洁机器人完成对应清洁区域任务多少秒。
表3理论清洁耗时集合
执行步骤A5:根据本例中户型图计算机器人在清洁任务集合之间移动时间理论集合T={Ti,j,k|i∈{0,1,2,...,N},j∈{0,1,2,...,N},k∈{1,2,...,K}}。
清洁区域之间距离使用最短路径算法求得,除以机器人的移动速度得到移动时间,由于我们使用的机器人移动速度均为0.2m/s,因此计算结果如表4所示,表为对称矩阵,单位为秒。
表4清洁任务之间移动时间
执行步骤A6:根据本例清洁任务耗时集合D中数据,以5%作为最大偏移量生成10组数据作为历史记录构建异构机器人集群任务分配鲁棒优化模型并求解;作为具体实施方式的一种,建立不确定集合以及求解鲁棒优化模型,执行步骤B1~B3,这里清洁任务不确定时间为/>可直接由上表计算得到,由于其中包含大量随机生成的数据在此不再重复列出;然后利用不确定集合构建基于混合整数线性规划和鲁棒优化的异构机器人集群任务分配的鲁棒对应模型,作为具体实施方式的一种,执行步骤C1-C5,建立异构机器人集群任务分配鲁棒优化模型并求解。
其中,本例中优化变量和限制条件的数量如表5所示。
表5优化变量和限制条件的数量
整数优化变量的数量 | 连续优化变量的数量 | 限制条件的数量 |
1225 | 17 | 821 |
然后,求解本例中的异构机器人集群任务分配鲁棒优化模型,求解器使用Gurobi,求解用时34秒,求解结果如下:
清洁机器人1:0→1→2→6→4→0
清洁机器人2:0→3→5→7→8→0
清洁机器人3:0→1→5→7→6→0
清洁机器人4:0→3→2→8→4→0
清洁工作耗时2140秒,满足环境中随机因素可能产生的最大干扰,符合预期设计,且各机器人承担工作量较为平衡,提现了规划的优秀属性。机器人1和2的具体执行路径见图3,机器人3和4的具体执行路径见图4。
下述为本发明的装置实施例,可以用于执行本发明方法实施例。对于装置实施例中未纰漏的细节,请参照本发明方法实施例。
本发明再一实施例中,提供一种异构机器人集群任务分配系统,能够用于实现上述的异构机器人集群任务分配方法,具体的,该异构机器人集群任务分配系统包括第一获取模块、第二获取模块以及分配模块。
其中,第一获取模块用于获取各待分配任务及异构机器人集群内各机器人的基本信息;基本信息包括机器人的数量、待分配任务的数量、各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间;第二获取模块用于获取各机器人服务各待分配任务的耗时时间;分配模块用于根据基本信息以及各机器人服务各待分配任务的耗时时间,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
本发明再一个实施例中,提供了一种计算机设备,该计算机设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor、DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行计算机存储介质内一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于异构机器人集群任务分配方法的操作。
本发明再一个实施例中,本发明还提供了一种存储介质,具体为计算机可读存储介质(Memory),所述计算机可读存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关异构机器人集群任务分配方法的相应步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (7)
1.一种异构机器人集群任务分配方法,其特征在于,包括以下步骤:
获取各待分配任务及异构机器人集群内各机器人的基本信息;基本信息包括机器人的数量、待分配任务的数量、各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间;
获取各机器人服务各待分配任务的耗时时间;
根据基本信息以及各机器人服务各待分配任务的耗时时间,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序;
所述获取各机器人服务各待分配任务的耗时时间的具体方法为:
获取各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间;
根据各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间,得到各机器人服务各待分配任务的耗时时间;
所述根据各机器人服务各待分配任务的理论耗时时间以及各机器人服务各待分配任务的若干历史耗时时间,得到各机器人服务各待分配任务的耗时时间的具体方法为:
根据各机器人服务各待分配任务的理论耗时时间及各机器人服务各待分配任务的若干历史耗时时间,通过下式得到各机器人服务各待分配任务的耗时时间:
所述异构机器人集群任务分配鲁棒优化模型包括优化变量、优化目标及约束条件;
其中,优化变量为:
X={Xijk|i∈{0,1,2,…,N},j∈{0,1,2,…,N},k∈{1,2,…,K}}
Y={Yik|i∈{0,1,2,…,N},k∈{1,2,…,K}}
U={Ui|i∈{0,1,2,…,N}}
其中Xijk∈{0,1,当机器人k分配先服务待分配任务i后服务待分配任务j时,Xijk=1,否则Xijk=0;Yik∈0,1,当机器人k分配服务待分配任务i时,Yik=1,否则Yik=0;表示待分配任务i服务开始时间;
优化目标为:minCmax,其中,Cmax为服务所有待分配任务的总花费时间;
约束条件包括优化变量的取值范围约束、服务所有待分配任务的总花费时间约束、机器人服务任务能力约束、机器人数量约束、待分配任务均被分配约束、机器人完成仓库约束、机器人子回环消除约束、待分配任务服务开始时间约束以及待分配任务的服务顺序约束。
2.根据权利要求1所述的异构机器人集群任务分配方法,其特征在于,所述各机器人在任意两待分配任务间的移动时间通过如下方式获得:
获取任意两待分配任务间的最短移动路径,以及各机器人的移动速度;
根据任意两待分配任务间的最短移动路径,以及各机器人的移动速度,得到各机器人在任意两待分配任务间的移动时间。
3.根据权利要求1所述的异构机器人集群任务分配方法,其特征在于,所述获取各机器人服务各待分配任务的理论耗时时间的具体方法为:
获取各待分配任务的任务类型以及工作量,以及各机器人服务各任务类型的待分配任务的服务效率;
根据各待分配任务的任务类型以及工作量,以及各机器人服务各任务类型的待分配任务的服务效率,得到各机器人服务各待分配任务的理论耗时时间。
4.根据权利要求1所述的异构机器人集群任务分配方法,其特征在于,所述通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序的具体方法为:
采用混合整数规划求解器Gurobi或Cplex求解预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
5.一种基于权利要求1所述异构机器人集群任务分配方法的异构机器人集群任务分配系统,其特征在于,包括:
第一获取模块,用于获取各待分配任务及异构机器人集群内各机器人的基本信息;基本信息包括机器人的数量、待分配任务的数量、各机器人的服务能力、待分配任务的服务顺序以及各机器人在任意两待分配任务间的移动时间;
第二获取模块,用于获取各机器人服务各待分配任务的耗时时间;
分配模块,用于根据基本信息以及各机器人服务各待分配任务的耗时时间,通过预设的异构机器人集群任务分配鲁棒优化模型,得到各机器人的待服务任务及待服务任务的服务顺序。
6.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述异构机器人集群任务分配方法的步骤。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述异构机器人集群任务分配方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110593648.4A CN113256125B (zh) | 2021-05-28 | 2021-05-28 | 异构机器人集群任务分配方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110593648.4A CN113256125B (zh) | 2021-05-28 | 2021-05-28 | 异构机器人集群任务分配方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113256125A CN113256125A (zh) | 2021-08-13 |
CN113256125B true CN113256125B (zh) | 2023-06-30 |
Family
ID=77185126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110593648.4A Active CN113256125B (zh) | 2021-05-28 | 2021-05-28 | 异构机器人集群任务分配方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113256125B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114357742B (zh) * | 2021-12-22 | 2022-10-21 | 中国人民解放军军事科学院战略评估咨询中心 | 一种干扰机配合下的多机空中突击协同行为模拟方法 |
CN117798936A (zh) * | 2024-02-29 | 2024-04-02 | 卡奥斯工业智能研究院(青岛)有限公司 | 机械臂集群的控制方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107168054A (zh) * | 2017-05-10 | 2017-09-15 | 沈阳工业大学 | 多机器人任务分配及路径规划方法 |
CN107229511A (zh) * | 2017-05-11 | 2017-10-03 | 东软集团股份有限公司 | 集群任务均衡调度方法、装置、存储介质及电子设备 |
CN110543352A (zh) * | 2019-08-16 | 2019-12-06 | 浙江大华技术股份有限公司 | 调度系统的任务分配方法及其相关的装置 |
CN112286658A (zh) * | 2020-10-28 | 2021-01-29 | 北京字节跳动网络技术有限公司 | 一种集群任务调度方法、装置、计算机设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11400595B2 (en) * | 2015-01-06 | 2022-08-02 | Nexus Robotics Llc | Robotic platform with area cleaning mode |
-
2021
- 2021-05-28 CN CN202110593648.4A patent/CN113256125B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107168054A (zh) * | 2017-05-10 | 2017-09-15 | 沈阳工业大学 | 多机器人任务分配及路径规划方法 |
CN107229511A (zh) * | 2017-05-11 | 2017-10-03 | 东软集团股份有限公司 | 集群任务均衡调度方法、装置、存储介质及电子设备 |
CN110543352A (zh) * | 2019-08-16 | 2019-12-06 | 浙江大华技术股份有限公司 | 调度系统的任务分配方法及其相关的装置 |
CN112286658A (zh) * | 2020-10-28 | 2021-01-29 | 北京字节跳动网络技术有限公司 | 一种集群任务调度方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Research onsolving the key problem of dynamic job shop scheduling;Xiong Wei et al.;Modular machine tool & Automatic manufacturing technique(第7期);全文 * |
异构型无人机群体并行任务分配算法;宋育武;贾林通;李娟;郭浩;;科学技术与工程(第04期);209-214 * |
Also Published As
Publication number | Publication date |
---|---|
CN113256125A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113256125B (zh) | 异构机器人集群任务分配方法、系统、设备及存储介质 | |
Yu et al. | Optimizing task scheduling in human-robot collaboration with deep multi-agent reinforcement learning | |
Luo et al. | GPU based parallel genetic algorithm for solving an energy efficient dynamic flexible flow shop scheduling problem | |
Guo et al. | Optimisation of integrated process planning and scheduling using a particle swarm optimisation approach | |
Quader et al. | Design of an enhanced multi-aisle order-picking system considering storage assignments and routing heuristics | |
Huang et al. | Robust multi-robot coordination in pick-and-place tasks based on part-dispatching rules | |
Guo et al. | Intelligent production control decision support system for flexible assembly lines | |
Su et al. | Coordination for dynamic weighted task allocation in disaster environments with time, space and communication constraints | |
Caraballo et al. | The block-information-sharing strategy for task allocation: A case study for structure assembly with aerial robots | |
CN113344473B (zh) | 海洋目标协同探测设备的优化方法及设备 | |
CN114169748A (zh) | 多机器人任务分配方法、系统、设备及可读存储介质 | |
CN109819032A (zh) | 一种联合考虑基站选择与计算迁移的云机器人任务分配方法 | |
Rauchecker et al. | Using high performance computing for unrelated parallel machine scheduling with sequence-dependent setup times: Development and computational evaluation of a parallel branch-and-price algorithm | |
CN113505993A (zh) | 分拨中心管理方法、装置、设备及存储介质 | |
CN109409746A (zh) | 一种生产调度方法及装置 | |
CN113269424B (zh) | 机器人集群任务分配方法、系统、设备及存储介质 | |
CN112948123B (zh) | 一种基于Spark的网格水文模型分布式计算方法 | |
CN110009209A (zh) | 一种机器人间信息交互的方法及装置 | |
Lavendelis et al. | Multi-agent robotic system architecture for effective task allocation and management | |
Davidović et al. | Parallel local search to schedule communicating tasks on identical processors | |
Panchu et al. | Route planning integrated multi objective task allocation for reconfigurable robot teams using genetic algorithm | |
CN115640986A (zh) | 基于奖励的机器人调度方法、装置、设备及介质 | |
Grum et al. | A decision maxim for efficient task realization within analytical network infrastructures | |
CN116755397B (zh) | 一种基于图卷积策略梯度的多机协同任务调度方法 | |
Kunaseth et al. | Scalable data-privatization threading for hybrid MPI/OpenMP parallelization of molecular dynamics |
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 |