CN111798097A - 一种基于市场机制的自主移动机器人任务分配处理方法 - Google Patents

一种基于市场机制的自主移动机器人任务分配处理方法 Download PDF

Info

Publication number
CN111798097A
CN111798097A CN202010508805.2A CN202010508805A CN111798097A CN 111798097 A CN111798097 A CN 111798097A CN 202010508805 A CN202010508805 A CN 202010508805A CN 111798097 A CN111798097 A CN 111798097A
Authority
CN
China
Prior art keywords
task
robot
autonomous mobile
tasks
robots
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.)
Granted
Application number
CN202010508805.2A
Other languages
English (en)
Other versions
CN111798097B (zh
Inventor
林志赟
邱方长
韩鑫焱
许林杰
魏璇
李立
林祖乾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Cotek Robot Co ltd
Zhejiang EP Equipment Co Ltd
Original Assignee
Zhejiang Cotek Robot Co ltd
Zhejiang EP Equipment Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Cotek Robot Co ltd, Zhejiang EP Equipment Co Ltd filed Critical Zhejiang Cotek Robot Co ltd
Priority to CN202010508805.2A priority Critical patent/CN111798097B/zh
Publication of CN111798097A publication Critical patent/CN111798097A/zh
Application granted granted Critical
Publication of CN111798097B publication Critical patent/CN111798097B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/08Auctions

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明公开了一种基于市场机制的自主移动机器人任务分配处理方法,将传统的集中式自主移动机器人调度***分布式化,部署在每台自主移动机器人中,大大提升了多机器人拓扑网络的可扩展性和鲁棒性,同时减少每台机器人的计算负载。采用的竞拍算法去中心化,不使用共享储存中心,使得整个***不需要额外配置存储器,有利于自主移动机器人调度***的整体稳定性。面向动态机器人任务分配问题,通过竞拍算法保证每一个阶段过程的最优性,虚拟市场达到平衡状态;采用多机器人协调策略和移动机器人自协调策略,进一步提高调度***动态自主移动机器人任务分配能力,改善竞拍算法的全局分配不足性。

Description

一种基于市场机制的自主移动机器人任务分配处理方法
技术领域
本发明涉及一种基于市场机制的自主移动机器人任务分配处理方法,属于机器人调度优化任务分配领域。
背景技术
随着工业4.0被提出,智能制造行业蓬勃发展,各种类型的机器人越来越多地渗透到人们的生产和生活当中,包括机械臂、移动机器人、探测机器人等。近年来,多机器人***也越来越多的应用到军事、未知环境探索和灾害救援等领域。民用方面,在大型仓储车间、制造业,机器代替人力已成为一种趋势,越来越多企业使用自主移动机器人搬运物品。
自主移动机器人根据不同的生产环境和使用要求,采取不同的技术设备和专业化的软件***。在使用自主无人机器人作为运输车辆的工作区域当中,调度中心会接收新任务,然后这些新任务会被合理地分配给各个机器人,机器人在接收到任务后采取一定的多机或单机任务协调策略决定任务的执行顺序。
完整的自主移动机器人***分为上位机调度***与下位机运动控制器。以往的集中式***中,上位机调度***通常需要单独主机接收任务,并且进行计算得到所有机器人的任务分配结果。所有分配结果被发送到每一个机器人中,由运动控制器根据任务的具体情况控制机器人运行。然而这种传统的集中式***对于上位机主机的计算性能要求很高,而且一旦在实际运行当中总是会出现交通堵塞情况,需要频繁地在上位机端更改运行线路。而在分布式***中,上位机调度***和下位机运动控制器都被集中在每一台自主移动机器人中,每一个机器人中都存在着完整的环境地图,在机器人接收到新任务发布后会自主地在多机间进行任务分配。任务分配完成后,本机的运动控制器接管这些任务,并且主动规划路径、执行任务。目前亟需高效、稳定的机器人调度优化任务分配方法。
发明内容
为了克服传统集中式***的不足,本发明提出了一种基于市场机制的自主移动机器人任务分配处理方法,旨在组建上述的分布式自主移动机器人调度***,高效率地实现动态任务在多机器人中的分配。
本发明的目的是通过以下技术方案来实现的:
一方面,本申请提出一种基于市场机制的自主移动机器人任务分配处理方法,该方法使用分布式自主移动机器人调度***,实现动态机器人任务分配处理;该方法包括以下步骤:
步骤1、获取环境地图信息,并初始化重要参数,包括自主移动机器人位置参数(xr,yr)、任务发布点位置参数、自主移动机器人个数、每个机器人的任务执行队列;
步骤2、自主移动机器人接收任务发布点发布的任务信息,每个任务包括任务起点和任务终点(xtask,ytask),每个机器人按一定时间长度Ta生成该机器人对应的任务待分配列表;
步骤3、设定动态任务分配问题总目标,即给定所有机器人任务的分配方案,使总收益最大;
步骤4、根据基于市场机制的竞拍算法分配步骤3中时间长度Ta内的任务,并将机器人任务分配给目标机器人;每个机器人将分配得到的任务从任务待分配列表中取出置于机器人任务执行队列末尾,将任务待分配列表中没有分配的任务返回任务发布点,参与下一次竞拍分配;在每个机器人上执行单个机器人的竞拍算法;
步骤5、实施多个移动机器人之间的任务协调策略,将机器人任务执行队列中的任务与其他机器人进行协调,使得多机器人的任务执行效率最大化,且不影响当前机器人正在执行的任务;
步骤6、实施单个移动机器人内部的任务自协调策略,将该机器人所有未执行的任务自协调,合理安排机器人任务执行队列中的任务执行顺序,使得机器人执行任务收益最大化。
进一步地,所述步骤3中,分布式自主移动机器人调度总目标为:
Figure BDA0002527628610000021
Figure BDA0002527628610000022
Figure BDA0002527628610000023
xijl∈{0,1}
其中,xijl表示第i个机器人是否分配了第j个任务发布点发布的第l个任务,取0为未分配,取1为分配了任务;aijl表示第i个机器执行第j个任务发布点发布的第l个任务获得的收益;约束(1)表示每一个机器人任务有且仅有一个机器人执行;约束(2)表示机器人i最大可执行的任务总量为Ni
进一步地,所述步骤3中,任务对应收益aijl的计算公式如下:
Figure BDA0002527628610000024
Figure BDA0002527628610000031
其中,dijl为机器人i与发布该任务l的任务发布点j的距离;(xtaskStart,ytaskStart)为任务l的起点坐标,(xtaskEnd,ytaskEnd)为任务l的终点坐标。
进一步地,所述步骤4中,单个机器人竞拍算法如下:
(4.1)每个机器人更新其任务待分配列表中所有任务价格和对应的最高价竞拍者;
Figure BDA0002527628610000032
Figure BDA0002527628610000033
其中,i为机器人编号,q为任务待分配列表中的任务编号,piq(t+1)为机器人i对任务q下一时刻的出价,piq(t)为机器人i对任务q此时的出价,pkq(t)为其他机器人k对任务q此时的出价,Ni(t)为其他机器人列表,biq(t+1)为机器人i在下一时刻获取的对任务q的竞拍者信息,bkq(t)为其他机器人的竞拍者信息,z为其他机器人编号;
(4.2)记当前机器人i所竞拍的任务为αi(t),如果
Figure BDA0002527628610000034
Figure BDA0002527628610000035
那么机器人i重新竞拍,选择一个利润最大的任务αi(t+1),同时机器人i更新价格和竞拍者列表:
Figure BDA0002527628610000036
Figure BDA0002527628610000037
其中,
Figure BDA0002527628610000038
为当前机器人i对任务αi(t)的出价,
Figure BDA0002527628610000039
为下一时刻机器人i对任务αi(t)的出价,
Figure BDA00025276286100000310
为下一时刻机器人对任务αi(t)的竞拍者信息;
Figure BDA00025276286100000311
为下一时刻机器人i对任务αi(t+1)的出价,γ为价格增量;
如果
Figure BDA00025276286100000312
那么
Figure BDA00025276286100000313
进一步地,所述步骤4中,所述单个机器人竞拍算法的迭代停止条件为:持续Δ-1次价格更新,任务价格不发生变化,其中Δ为单个机器人拓扑结构直径;
所述竞拍算法的最大迭代次数为:
Figure BDA00025276286100000314
其中,m为机器人数目,aijl为任务价值,∈为松弛变量参数。
进一步地,所述步骤5中,实施多个移动机器人之间的任务协调策略,策略面向同构机器人群,对于某一段时间长度Ta内,某两个机器人至多只会进行一次多机器人任务协调,具体步骤如下:
(5.1)某个机器人ri和机器人rs通过任务分配竞拍算法分别获得任务ti和ts
(5.2)机器人ri多机器人协调策略等待执行,当满足以下条件转入步骤(5.3);
Figure BDA0002527628610000041
其中,(xri,yri)和(xrs,yrs)分别为机器人ri和机器人rs的位置坐标,D0为可通信范围;
(5.3)机器人ri和机器人rs分别计算对应的原始任务执行队列价值OriginTaskExecutionQueueValue,机器人ri的任务执行队列为TaskExecutionQueue:{ti0,ti1,ti2,…ti},原始任务执行队列价值计算方法如下:
Figure BDA0002527628610000042
其中,(xti0Start,yti0Start),(xtiStart,ytiStart)分别表示任务ti0和ti的起点位置坐标,(xti0End,yti0End),(xtiEnd,ytiEnd)分别表示任务ti0和ti的终点位置坐标;
(5.4)机器人ri和机器人rs分别计算对应的交换任务执行队列价值SwapTaskExecutionQueueValue,机器人ri和机器人rs将自己当前分配的任务进行交换,交换后机器人ri的任务执行队列为TaskExecutionQueue:{ti0,ti1,ti2,…ts},交换任务执行队列价值计算方法如下:
Figure BDA0002527628610000043
(5.5)判断任务协调前后机器人ri和机器人rs的原始任务执队列价值和交换任务执行队列价值是否变化,如满足下式则进行任务协调:
riOriginTaskExecutionQueueValue+rsOriginTaskExecutionQueueValue
<riSwapTaskExecutionQueueValue+rsSwapTaskExecutionQueueValue
进一步地,所述步骤6中,实施单个移动机器人内部的任务自协调策略,自协调方法采用最优执行位置价值函数,具体为:对于新任务,计算机器人的任务执行队列中不同位置的最短任务完成距离;计算***新任务前后的差异,选择距离增加最小的任务***点上的执行收益作为新任务的执行价值;
Figure BDA0002527628610000044
其中,Lnew是机器人加入新任务后完成任务执行队列所需要经过的总路程,Lold是不加新任务的完成任务执行队列所需要经过的总路程;若机器人ri所投标的任务为tk,tk的执行位置插在最后,机器人ri的任务执行队列为TaskExecutionQueue:{tk0,tk1,tk2,…,tks-1,tk},s为未加入新任务时的任务执行队列长度;
Lnew和Lold计算方法如下:
Figure BDA0002527628610000051
Figure BDA0002527628610000052
其中,(xri,yri)为机器人ri位置坐标,
Figure BDA0002527628610000053
Figure BDA0002527628610000054
分别表示任务tk0、tks-1和tk的起点位置坐标,
Figure BDA0002527628610000055
Figure BDA0002527628610000056
分别表示任务tk0、tks-1和tk的终点位置坐标;
最优执行位置价值函数自协调算法步骤如下:
(6.1)机器人ri获取任务待分配列表TaskList={t0,t1,t2,…,tk-1};
(6.2)机器人ri根据自身任务执行队列和最优执行位置价值函数计算TaskLust中每个新投标任务的最优执行位置价值;
(6.3)机器人ri记录每个新投标任务的最优执行位置和对应的最优执行位置价值;
(6.4)进入任务分配竞拍算法并完成任务分配。
另一方面,本申请提出一种分布式自主移动机器人调度***,该***基于上述自主移动机器人任务分配处理方法实现,每个自主移动机器人包括通信模块、任务执行队列、竞拍算法模块、多机器人任务协调策略模块、移动机器人自协调策略模块和运动控制器,并通过通信模块与其他机器人进行信息交互。
本申请还提出一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明采用的以上技术方案与现有技术相比,有益效果如下:
1.使用完全分布式的自主移动机器人调度***,实现动态自主移动机器人任务分配处理。每一台自主移动机器人单独搭载基于市场机制的任务分配处理方法,大大提升了多机器人拓扑网络的可扩展性和鲁棒性,同时减少单个机器人的计算负载。
2.采用的竞拍算法去中心化,不使用共享储存中心,使得整个***不需要额外配置存储器,有利于自主移动机器人调度***的整体稳定性。
3.采用多机器人协调策略和移动机器人自协调策略,进一步提高调度***动态自主移动机器人任务分配能力,改善竞拍算法的全局分配不足性。
附图说明
图1为本发明实施例提供的基于市场机制的动态自主移动机器人任务分配方法流程图;
图2为本发明实施例中的线性拓扑结构图;
图3为本发明实施例中采取的单机器人任务自协调策略图;
图4为本发明实施例提供的分布式自主移动机器人调度***结构图。
具体实施方式
下面结合本发明实施例附图对本发明的技术方案做进一步的详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚,需要说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明发明实施例的目的。
本申请提出一种基于市场机制的自主移动机器人任务分配处理方法,该方法使用完全分布式的自主移动机器人调度***,实现动态机器人任务分配处理;每一台自主移动机器人单独搭载基于市场机制的任务分配处理方法,大大提升了多机器人拓扑网络的可扩展性和鲁棒性,同时减少单个机器人的计算负载;所采用的竞拍算法去中心化,不使用共享储存中心,使得整个***不需要额外配置存储器,有利于自主移动机器人调度***的整体稳定性;采用多机器人协调策略和移动机器人自协调策略,进一步提高调度***动态机器人任务分配能力,改善竞拍算法的全局分配不足性。
本发明方法的具体实现步骤如下:
步骤1、获取环境地图信息,并初始化重要参数,包括自主移动机器人位置参数(xr,yr)、任务发布点位置参数、自主移动机器人个数、每个机器人的任务执行队列等。
步骤2、自主移动机器人接收任务发布点发布的任务信息,每个任务发布点可发布若干任务,每个任务包括任务起点和任务终点(xtask,ytask)(平面位置),每个机器人按一定时间长度Ta生成该机器人对应的任务待分配列表,将复杂的动态任务分配问题分解为若干个静态任务分配问题。
步骤3、动态任务分配问题总目标设定。动态任务分配问题可以有许多目标,包括移动机器人任务最大完成工时、机器人执行任务最大收益、机器人执行任务最小消耗等。对于自主移动机器人调度***来说,一般需要的总体目标就是使得自主移动机器人的工作效率最高。关于工作效率,可以有多种表示,如最短时间表示,最短距离表示,最大收益表示等。单一机器人执行任务最大完成工时通常用于描述机器人的执行能力,这项指标往往使得所有的机器人的运行时长趋于相同,达到负载均衡状态,但这一指标不能直接用于描述自主移动机器人调度***执行任务的最优性。
本发明采用的基于市场机制的任务分配方法,吸取博弈论纳什平衡思想,在每一竞拍局中构建虚拟市场,每一台机器人都是虚拟市场参与者。每一台机器人在相同的时间T内都接收相同的任务,记机器人集合R={r1,r2,…,rm},任务发布点集合P={p1,p2,…,pn},这些任务发布点每隔一定时间发布一次任务,记为tjl
在本发明中,使用最大收益表示***的最优目标,***的总目标就是给定所有机器人任务的分配方案,使总收益最大,将机器人ri执行任务tjl获得的收益记为aijl,其中i表示机器人编号,j表示任务发布点编号,l表示某个任务发布点上发布的任务序号。
进一步地,对于工作区域自主移动机器人调度***而言,整个分布式自主移动机器人调度总目标为:
Figure BDA0002527628610000071
Figure BDA0002527628610000072
Figure BDA0002527628610000073
xijl∈{0,1}
其中,xijl表示第i个机器人是否分配了任务发布点j发布的任务l,取0为未分配,取1为分配了任务;约束(1)表示每一个机器人任务有且仅有一个机器人执行;约束(2)表示机器人i最大可执行的任务总量为Ni
本发明采用的收益公式如下:
Figure BDA0002527628610000074
其中,dijl为机器人i距离发布该任务l的任务发布点j的距离,aijl为任务对应收益;
Figure BDA0002527628610000075
其中,(xtaskStart,ytaskstart)为任务l的起点坐标,(xtaskEnd,ytaskEnd)为任务l的终点坐标。
步骤4、根据基于市场机制的竞拍算法分配步骤3中时间长度Ta内的任务,并将机器人任务分配给目标自主移动机器人。每个机器人将分配得到的任务从任务待分配列表中取出置于机器人任务执行队列末尾,将任务待分配列表中没有分配的任务返回任务发布点(即每个机器人不再存储未分配的任务),参与下一次竞拍分配。
在本发明中,实现了自主移动机器人任务分配方法的完全分布式,即每一台机器人都运行各自的任务分配算法,在虚拟市场中相互独立,相互作用,所有机器人完全自私,只为自己的利益进行竞拍,选择任务。最终虚拟市场会趋于稳态,并且市场整体创造的价值达到最高,实现局部最优分配。
本发明实现的基于市场机制的自主移动机器人任务分配处理方法在每一台机器人上都需要部署,这样的优点是可以将一台机器人上的复杂计算分摊至所有机器人中,传统集中式***中的任务分配业务不再需要在某一台机器人或单独服务器进行大量计算。同时,任务分配算法的完全分布式特性可以大大增强自主移动机器人***的扩展性和鲁棒性,机器人进入和退出不会对整体分布式***的任务分配造成太大影响。
在每个自主移动机器人上搭载并执行单个机器人基于市场机制的竞拍算法,由于算法的独立性,算法的停止条件不依赖外部输入,完全凭借自身的迭代停止条件,同时算法存在最大迭代次数。
图1所示,单个机器人的竞拍算法大致流程如下:
(4.1)每个机器人更新其任务待分配列表中所有任务价格和对应的最高价竞拍者(有可能为该机器人,也有可能为该调度***中的其他机器人);
Figure BDA0002527628610000081
Figure BDA0002527628610000082
其中,i为机器人编号,q为任务待分配列表中的任务编号,piq(t+1)为机器人i对任务q下一时刻的出价,piq(t)为机器人i对任务q此时的出价,pkq(t)为其他机器人k对任务q此时的出价,Ni(t)为其他机器人列表,biq(t+1)为机器人i在下一时刻获取的对任务q的竞拍者信息,bkq(t)为其他机器人的竞拍者信息,z为其他机器人编号。
(4.2)记当前机器人i所竞拍的任务为αi(t),如果
Figure BDA0002527628610000083
Figure BDA0002527628610000084
那么机器人i重新竞拍,选择一个利润最大的任务αi(t+1),同时机器人i更新价格和竞拍者列表:
Figure BDA0002527628610000085
Figure BDA0002527628610000091
其中,
Figure BDA0002527628610000092
为当前机器人i对任务αi(t)的出价,
Figure BDA0002527628610000093
为下一时刻机器人i对任务αi(t)的出价,
Figure BDA0002527628610000094
为下一时刻机器人对任务αi(t)的竞拍者信息;
Figure BDA0002527628610000095
为下一时刻机器人i对任务αi(t+1)的出价,γ为价格增量;
如果
Figure BDA0002527628610000096
那么
Figure BDA0002527628610000097
基于市场机制的竞拍算法可以有两种表述:带共享存储中心和不带共享存储中心。带共享存储中心的竞拍算法设计上更为简练,同时只需要更少自主移动机器人通信代价,不过缺点是需要一个单独的存储介质。不带共享存储中心的竞拍算法在算法设计上较复杂,尤其是多机器人通信层需要区别各个主移动机器人传递的市场价格是否一致,以及其他机器人的竞拍信息是否可靠。同时竞拍算法松弛变量参数∈的选择也需要更多改进。
有关松弛变量参数∈:加入松弛变量参数∈后,分布式竞拍算法分配结果不一定为最优,但一定在最优分配总价值的n∈以内。
有关迭代停止条件和最大迭代次数:本发明采用的基于市场机制的自主移动机器人任务分配处理方法在每一竞拍局中都会产生许多次竞拍;定义一个多机器人调度***拓扑结构直径为Δ,拓扑结构直径表示最远端的两个机器人相互通信需要跨越的中间机器人个数。
对于每一个机器人来说,自身都有一个特定的迭代停止条件,用于控制机器人的计算,同时产生分配结果,其基本条件为持续Δ-1次价格更新,任务价格不发生变化。
竞拍算法的最大迭代次数存在上限:
Figure BDA0002527628610000098
其中,Δ为单个机器人拓扑结构直径,如图2,线性拓扑结构的直径Δ=6。m为机器人数目,aijl为任务价值,∈为松弛变量参数。
步骤5、实施多个移动机器人之间的任务协调策略,将机器人任务执行队列中的任务与其他机器人进行协调,使得多机器人的任务执行效率最大化,且不影响当前机器人正在执行的任务。
多机器人任务协调策略面向同构机器人群,群内所有机器人都被指派一类相同类型的任务,在多机协调时间长度内交换一定数量任务,使多机器人的任务执行收益最大化。
以下给出多移动机器人之间的任务协调策略的一种实现方式,但不限于此:
将机器人任务执行队列中的任务与其他机器人进行协调,使得多机器人的任务执行效率最大化,且不影响当前机器人正在执行的任务。
多机器人任务协调策略面向同构机器人群,即群内所有机器人都被指派一类相同类型的任务,通过进行多机器人任务协调策略后可使任务执行收益最大化。
常规的任务分配竞拍算法只能将时间长度Ta内的任务根据当前机器人的状态进行分配,分配会满足多机器人调度***最优分配的原则,但分配不会考虑单个机器人原先任务执行队列中的任务情况,即分配过程只考虑当前被分配任务与机器人的价值。
在时间长度Ta内完成一次任务分配后,分配任务的机器人在可通信范围内(D0),可根据多机器人任务协调算法判断是否进行一次两两任务交换。对于某一段时间长度Ta内,某两个机器人至多只会进行一次多机器人任务协调,若机器人数目为m,某机器人的多机器人协调策略执行次数最大为m-1。
多机器人任务协调策略算法如下:
(5.1)某个机器人ri和机器人rs通过任务分配竞拍算法分别获得任务ti和ts
(5.2)机器人ri多机器人协调策略等待执行,当满足以下条件转入步骤(5.3);
Figure BDA0002527628610000101
其中,(xri,yri)和(xrs,yrs)分别为机器人ri和机器人rs的位置坐标,D0为可通信范围;
(5.3)机器人ri和机器人rs分别计算对应的原始任务执行队列价值OriginTaskExecutionQueueValue,机器人ri的任务执行队列为TaskExecutionQueue:{ti0,ti1,ti2,…ti},原始任务执行队列价值计算方法如下:
Figure BDA0002527628610000102
其中,(xti0Start,yti0Start),(xtiStart,ytiStart)分别表示任务ti0和ti的起点位置坐标,(xti0End,yti0End),(xtiEnd,ytiEnd)分别表示任务ti0和ti的终点位置坐标。
(5.4)机器人ri和机器人rs分别计算对应的交换任务执行队列价值SwapTaskExecutionQueueValue,机器人ri和机器人rs将自己当前分配的任务进行交换,交换后机器人ri的任务执行队列为TaskExecutionQueue:{ti0,ti1,ti2,…ts},交换任务执行队列价值计算方法如下:
Figure BDA0002527628610000103
(5.5)判断任务协调前后机器人ri和机器人rs的原始任务执队列价值和交换任务执行队列价值是否变化,当满足下式,则进行任务协调。
riOriginTaskExecutionQueueValue+rsOriginTaskExecutionQueueValue
<riSwapTaskExecutionQueueValue+rsSwapTaskExecutionQueueValue
步骤6、实施单个移动机器人内部的任务自协调策略,将该机器人所有未执行的任务自协调,合理安排机器人任务执行队列中的任务执行顺序,使机器人执行任务收益最大化。
以下给出单个移动机器人内部的任务自协调策略的一种实现方式,但不限于此:
将所有自主移动机器人未执行的任务自协调,合理安排机器人任务执行队列中的执行顺序,使机器人执行任务收益最大化。如图3所示,单个任务自协调策略通过在自身的任务执行队列中合理改变任务执行顺序,让单个机器人的任务执行收益最大化。本发明的自协调方法包括最优执行位置价值函数等。
以下方法为最优执行位置价值函数方法,此法可直接用于任务分配竞拍算法的核心算法当中,替换原先旧价值函数计算,以此提高单个机器人的任务执行收益。对于新的投标任务,计算机器人的任务执行队列中不同位置的最短任务完成距离(假设任务在分配后没有立即执行)。计算***新任务前后的差异,选择距离增加最小的任务***点上的执行收益,作为新任务的执行价值。
Figure BDA0002527628610000111
其中,Lnew是机器人加入新任务后完成任务执行队列所需要经过的总路程,Lold是不加新任务的完成任务执行队列所需要经过的总路程;若机器人ri所投标的任务为tk,tk的执行位置插在最后,机器人ri的任务执行队列为TaskExecutionQueue:{tk0,tk1,tk2,…,tks-1,tk},s为未加入新任务时的任务执行队列长度;
Lnew和Lold计算方法如下:
Figure BDA0002527628610000112
Figure BDA0002527628610000113
其中,(xri,yri)为机器人ri位置坐标,
Figure BDA0002527628610000121
Figure BDA0002527628610000122
分别表示任务tk0、tks-1和tk的起点位置坐标,
Figure BDA0002527628610000123
Figure BDA0002527628610000124
分别表示任务tk0、tks-1和tk的终点位置坐标;
最优执行位置价值函数自协调算法步骤如下:
(6.1)机器人ri获取任务待分配列表TaskList={t0,t1,t2,…,tk-1};
(6.2)机器人ri根据自身任务执行队列和最优执行位置价值函数计算TaskList中每个新投标任务的最优执行位置价值;
(6.3)机器人ri记录每个新投标任务的最优执行位置和对应的最优执行位置价值;
(6.4)进入任务分配竞拍算法并完成任务分配。
基于上述自主移动机器人任务分配处理方法,本申请构建了一种分布式自主移动机器人调度***,***总体结构如图4所示。每台自主移动机器人包括通信模块、任务执行队列、竞拍算法模块、多机器人任务协调策略模块、移动机器人自协调策略模块和运动控制器。
每台自主移动机器人单独搭载基于市场机制的任务分配处理方法,大大提高自主移动机器人调度***整体可扩展性和鲁棒性,同时减少每一台机器人的计算负载,不需要单独配置计算中心和储存中心。分布式自主移动机器人调度***任务分配过程由基于市场机制的自主移动机器人任务分配算法实现,主要由竞拍算法模块、多机器人任务协调策略模块、移动机器人自协调策略模块等组成,并通过机器人通信模块进行信息交互。本发明面向动态机器人任务分配问题,通过竞拍算法保证每一个阶段过程的最优性,虚拟市场达到平衡状态。利用协调算法提高动态过程的分配质量,与其他机器人交互信息并达成任务交换,同时合理安排自身任务执行队列顺序,使任务分配收益最大化。
本申请还提出一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
以上所述仅是本发明的优选实施方式,虽然本发明已以较佳实施例披露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。

Claims (10)

1.一种基于市场机制的自主移动机器人任务分配处理方法,其特征在于,该方法使用分布式自主移动机器人调度***,实现动态机器人任务分配处理;该方法包括以下步骤:
步骤1、获取环境地图信息,并初始化重要参数,包括自主移动机器人位置参数(xr,yr)、任务发布点位置参数、自主移动机器人个数、每个机器人的任务执行队列;
步骤2、自主移动机器人接收任务发布点发布的任务信息,每个任务包括任务起点和任务终点(xtask,ytask),每个机器人按一定时间长度Ta生成该机器人对应的任务待分配列表;
步骤3、设定动态任务分配问题总目标,即给定所有机器人任务的分配方案,使总收益最大。
步骤4、根据基于市场机制的竞拍算法分配步骤3中时间长度Ta内的任务,并将机器人任务分配给目标机器人;每个机器人将分配得到的任务从任务待分配列表中取出置于机器人任务执行队列末尾,将任务待分配列表中没有分配的任务返回任务发布点,参与下一次竞拍分配;在每个机器人上执行单个机器人的竞拍算法。
步骤5、实施多个移动机器人之间的任务协调策略,将机器人任务执行队列中的任务与其他机器人进行协调,使得多机器人的任务执行效率最大化,且不影响当前机器人正在执行的任务。
步骤6、实施单个移动机器人内部的任务自协调策略,将该机器人所有未执行的任务自协调,合理安排机器人任务执行队列中的任务执行顺序,使得机器人执行任务收益最大化。
2.根据权利要求1所述的基于市场机制的自主移动机器人任务分配处理方法,其特征在于,所述步骤3中,分布式自主移动机器人调度总目标为:
Figure FDA0002527628600000011
Figure FDA0002527628600000012
Figure FDA0002527628600000013
xijl∈{0,1}
其中,xijl表示第i个机器人是否分配了第j个任务发布点发布的第l个任务,取0为未分配,取1为分配了任务;aijl表示第i个机器执行第j个任务发布点发布的第l个任务获得的收益;约束(1)表示每一个机器人任务有且仅有一个机器人执行;约束(2)表示机器人i最大可执行的任务总量为Ni
3.根据权利要求2所述的基于市场机制的自主移动机器人任务分配处理方法,其特征在于,所述步骤3中,任务对应收益aijl的计算公式如下:
Figure FDA0002527628600000021
Figure FDA0002527628600000022
其中,dijl为机器人i与发布该任务l的任务发布点j的距离;(xtaskStart,ytaskStart)为任务l的起点坐标,(xtaskEnd,ytaskEnd)为任务l的终点坐标。
4.根据权利要求1所述的基于市场机制的自主移动机器人任务分配处理方法,其特征在于,所述步骤4中,单个机器人竞拍算法如下:
(4.1)每个机器人更新其任务待分配列表中所有任务价格和对应的最高价竞拍者;
Figure FDA0002527628600000023
Figure FDA0002527628600000024
其中,i为机器人编号,q为任务待分配列表中的任务编号,piq(t+1)为机器人i对任务q下一时刻的出价,piq(t)为机器人i对任务q此时的出价,pkq(t)为其他机器人k对任务q此时的出价,Ni(t)为其他机器人列表,biq(t+1)为机器人i在下一时刻获取的对任务q的竞拍者信息,bkq(t)为其他机器人的竞拍者信息,z为其他机器人编号;
(4.2)记当前机器人i所竞拍的任务为αi(t),如果
Figure FDA0002527628600000025
Figure FDA0002527628600000026
那么机器人i重新竞拍,选择一个利润最大的任务αi(t+1),同时机器人i更新价格和竞拍者列表:
Figure FDA0002527628600000027
Figure FDA0002527628600000028
其中,
Figure FDA0002527628600000029
为当前机器人i对任务αi(t)的出价,
Figure FDA00025276286000000210
为下一时刻机器人i对任务αi(t)的出价,
Figure FDA00025276286000000211
为下一时刻机器人对任务αi(t)的竞拍者信息;
Figure FDA00025276286000000212
为下一时刻机器人i对任务αi(t+1)的出价,γ为价格增量;
如果
Figure FDA00025276286000000213
那么
Figure FDA00025276286000000214
5.根据权利要求1所述的基于市场机制的自主移动机器人任务分配处理方法,其特征在于,所述步骤4中,所述单个机器人竞拍算法的迭代停止条件为:持续Δ-1次价格更新,任务价格不发生变化,其中Δ为单个机器人拓扑结构直径;
所述竞拍算法的最大迭代次数为:
Figure FDA00025276286000000215
其中,m为机器人数目,aijl为任务价值,∈为松弛变量参数。
6.根据权利要求1所述的基于市场机制的自主移动机器人任务分配处理方法,其特征在于,所述步骤5中,实施多个移动机器人之间的任务协调策略,策略面向同构机器人群,对于某一段时间长度Ta内,某两个机器人至多只会进行一次多机器人任务协调,具体步骤如下:
(5.1)某个机器人ri和机器人rs通过任务分配竞拍算法分别获得任务ti和ts
(5.2)机器人ri多机器人协调策略等待执行,当满足以下条件转入步骤(5.3);
Figure FDA0002527628600000031
其中,(xri,yri)和(xrs,yrs)分别为机器人ri和机器人rs的位置坐标,D0为可通信范围;
(5.3)机器人ri和机器人rs分别计算对应的原始任务执行队列价值OriginTaskExecutionQueueValue,机器人ri的任务执行队列为TaskExecutionQueue:{ti0,ti1,ti2,...ti},原始任务执行队列价值计算方法如下:
Figure FDA0002527628600000032
其中,(xti0Start,yti0Start),(xtiStart,ytiStart)分别表示任务ti0和ti的起点位置坐标,(xti0End,yti0End),(xtiEnd,ytiEnd)分别表示任务ti0和ti的终点位置坐标;
(5.4)机器人ri和机器人rs分别计算对应的交换任务执行队列价值SwapTaskExecutionQueueValue,机器人ri和机器人rs将自己当前分配的任务进行交换,交换后机器人ri的任务执行队列为TaskExecutionQueue:{ti0,ti1,ti2,...ts},交换任务执行队列价值计算方法如下:
Figure FDA0002527628600000033
(5.5)判断任务协调前后机器人ri和机器人rs的原始任务执队列价值和交换任务执行队列价值是否变化,如满足下式则进行任务协调:
riOriginTaskExecutionQueueValue+rsOriginTaskExecutionQueueValue<riSwapTaskExecutionQueueValue+rsSwapTaskExecutionQueueValue
7.根据权利要求1所述的基于市场机制的自主移动机器人任务分配处理方法,其特征在于,所述步骤6中,实施单个移动机器人内部的任务自协调策略,自协调方法采用最优执行位置价值函数,具体为:对于新任务,计算机器人的任务执行队列中不同位置的最短任务完成距离;计算***新任务前后的差异,选择距离增加最小的任务***点上的执行收益作为新任务的执行价值;
Figure FDA0002527628600000041
其中,Lnew是机器人加入新任务后完成任务执行队列所需要经过的总路程,Lold是不加新任务的完成任务执行队列所需要经过的总路程;若机器人ri所投标的任务为tk,tk的执行位置插在最后,机器人ri的任务执行队列为TaskExecutionQueue:{tk0,tk1,tk2,...,tks-1,tk},s为未加入新任务时的任务执行队列长度;
Lnew和Lold计算方法如下:
Figure FDA0002527628600000042
Figure FDA0002527628600000043
其中,(xri,yri)为机器人ri位置坐标,
Figure FDA0002527628600000044
Figure FDA0002527628600000045
分别表示任务tk0、tks-1和tk的起点位置坐标,
Figure FDA0002527628600000046
Figure FDA0002527628600000047
分别表示任务tk0、tks-1和tk的终点位置坐标;
最优执行位置价值函数自协调算法步骤如下:
(6.1)机器人ri获取任务待分配列表TaskList={t0,t1,t2,...,tk-1};
(6.2)机器人ri根据自身任务执行队列和最优执行位置价值函数计算TaskList中每个新投标任务的最优执行位置价值;
(6.3)机器人ri记录每个新投标任务的最优执行位置和对应的最优执行位置价值;
(6.4)进入任务分配竞拍算法并完成任务分配。
8.一种分布式自主移动机器人调度***,其特征在于,该***基于权利要求1-7任一项所述自主移动机器人任务分配处理方法实现,每个自主移动机器人包括通信模块、任务执行队列、竞拍算法模块、多机器人任务协调策略模块、移动机器人自协调策略模块和运动控制器,并通过通信模块与其他机器人进行信息交互。
9.一种计算机设备,其特征在于,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
CN202010508805.2A 2020-06-06 2020-06-06 一种基于市场机制的自主移动机器人任务分配处理方法 Active CN111798097B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010508805.2A CN111798097B (zh) 2020-06-06 2020-06-06 一种基于市场机制的自主移动机器人任务分配处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010508805.2A CN111798097B (zh) 2020-06-06 2020-06-06 一种基于市场机制的自主移动机器人任务分配处理方法

Publications (2)

Publication Number Publication Date
CN111798097A true CN111798097A (zh) 2020-10-20
CN111798097B CN111798097B (zh) 2024-04-09

Family

ID=72803448

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010508805.2A Active CN111798097B (zh) 2020-06-06 2020-06-06 一种基于市场机制的自主移动机器人任务分配处理方法

Country Status (1)

Country Link
CN (1) CN111798097B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112862251A (zh) * 2021-01-12 2021-05-28 西北工业大学 一种基于改进pi算法的分布式多auv任务分配方法
CN114924513A (zh) * 2022-06-07 2022-08-19 中迪机器人(盐城)有限公司 一种多机器人协同控制***及方法
CN116638528A (zh) * 2023-07-26 2023-08-25 深圳墨影科技有限公司 一种机器人移动协作***的混合调度方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106875090A (zh) * 2017-01-09 2017-06-20 中南大学 一种面向动态任务的多机器人分布式任务分配形成方法
CN110308740A (zh) * 2019-06-28 2019-10-08 天津大学 一种面向移动目标追踪的无人机群动态任务分配方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106875090A (zh) * 2017-01-09 2017-06-20 中南大学 一种面向动态任务的多机器人分布式任务分配形成方法
CN110308740A (zh) * 2019-06-28 2019-10-08 天津大学 一种面向移动目标追踪的无人机群动态任务分配方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112862251A (zh) * 2021-01-12 2021-05-28 西北工业大学 一种基于改进pi算法的分布式多auv任务分配方法
CN112862251B (zh) * 2021-01-12 2024-02-09 西北工业大学 一种基于改进pi算法的分布式多auv任务分配方法
CN114924513A (zh) * 2022-06-07 2022-08-19 中迪机器人(盐城)有限公司 一种多机器人协同控制***及方法
CN116638528A (zh) * 2023-07-26 2023-08-25 深圳墨影科技有限公司 一种机器人移动协作***的混合调度方法
CN116638528B (zh) * 2023-07-26 2023-09-22 深圳墨影科技有限公司 一种机器人移动协作***的混合调度方法

Also Published As

Publication number Publication date
CN111798097B (zh) 2024-04-09

Similar Documents

Publication Publication Date Title
CN106875090B (zh) 一种面向动态任务的多机器人分布式任务分配形成方法
Zhao et al. A heuristic distributed task allocation method for multivehicle multitask problems and its application to search and rescue scenario
CN111798097B (zh) 一种基于市场机制的自主移动机器人任务分配处理方法
Whitbrook et al. Reliable, distributed scheduling and rescheduling for time-critical, multiagent systems
Turner et al. Distributed task rescheduling with time constraints for the optimization of total task allocations in a multirobot system
Giordani et al. A distributed multi-agent production planning and scheduling framework for mobile robots
CN112508369B (zh) 基于改进蚁群算法的多无人机任务分配方法
CN110456633B (zh) 机载多平台分布式任务分配方法
CN107657364A (zh) 一种面向烟草工厂物料运输的多载agv任务分配形成方法
Niu et al. GMTA: A geo-aware multi-agent task allocation approach for scientific workflows in container-based cloud
CN111885550A (zh) 一种分布式自主移动机器人调度***
CN111784211B (zh) 一种基于分簇的群体多任务分配方法及存储介质
Yang et al. A distributed task reassignment method in dynamic environment for multi-UAV system
Zhou et al. Multi-objective optimization of greening scheduling problems of part feeding for mixed model assembly lines based on the robotic mobile fulfillment system
CN108415760A (zh) 一种基于移动机会网络的群智计算在线任务分配方法
Zaidi et al. Task allocation based on shared resource constraint for multi-robot systems in manufacturing industry
CN111680836B (zh) 面向st-sr问题的分布式多机器人***任务分配方法
CN113865607A (zh) 路径规划方法、装置、设备及存储介质
CN117930842A (zh) 一种多agv任务分配方法
Zhang et al. Distributed task allocation with critical tasks and limited capacity
Dong et al. Multi-target dynamic hunting strategy based on improved k-means and auction algorithm
Ebufegha et al. Multi-agent system model for dynamic scheduling in flexibile job shops
CN115689184A (zh) 一种基于共识的捆绑算法的分布式任务分配方法
Yang et al. A resource-constrained distributed task allocation method based on a two-stage coalition formation methodology for multi-UAVs
CN112508478B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 310053 1st floor, building 3, No.1 Weiye Road, Puyan street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: ZHEJIANG COTEK ROBOT CO.,LTD.

Applicant after: Zhejiang Zhongli Machinery Co.,Ltd.

Address before: 310053 1st floor, building 3, No.1 Weiye Road, Puyan street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant before: ZHEJIANG COTEK ROBOT CO.,LTD.

Applicant before: Zhejiang EP Equipment Co.,Ltd.

GR01 Patent grant
GR01 Patent grant