CN111680836B - 面向st-sr问题的分布式多机器人系统任务分配方法 - Google Patents
面向st-sr问题的分布式多机器人系统任务分配方法 Download PDFInfo
- Publication number
- CN111680836B CN111680836B CN202010508817.5A CN202010508817A CN111680836B CN 111680836 B CN111680836 B CN 111680836B CN 202010508817 A CN202010508817 A CN 202010508817A CN 111680836 B CN111680836 B CN 111680836B
- Authority
- CN
- China
- Prior art keywords
- robot
- task
- coordination
- auction
- price
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000007246 mechanism Effects 0.000 claims abstract description 28
- 230000009194 climbing Effects 0.000 claims abstract description 8
- 230000008859 change Effects 0.000 claims abstract description 4
- 230000008901 benefit Effects 0.000 claims description 81
- 239000013598 vector Substances 0.000 claims description 71
- 230000009977 dual effect Effects 0.000 claims description 17
- 230000003068 static effect Effects 0.000 claims description 13
- 238000003780 insertion Methods 0.000 claims description 10
- 230000037431 insertion Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000000354 decomposition reaction Methods 0.000 claims description 5
- 238000013178 mathematical model Methods 0.000 claims description 5
- 230000007774 longterm Effects 0.000 claims description 3
- 230000000593 degrading effect Effects 0.000 claims description 2
- 238000013461 design Methods 0.000 claims description 2
- 230000001360 synchronised effect Effects 0.000 abstract description 7
- 238000004891 communication Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 108700041286 delta Proteins 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
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/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock 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/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
- 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
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Game Theory and Decision Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Educational Administration (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种面向在线ST‑SR问题的分布式多机器人系统任务分配方法。本发明采用的分布式方法具有更强的可扩展性和鲁棒性,节点的变化不会对系统整体任务分配产生过大影响。本发明不设立中心节点,所有节点完全平等,不会有节点失效问题。本发明主要面向在线ST‑SR问题,以改进的基于市场机制的竞拍算法为核心,适用所有分布式系统,不依赖同步的时间戳,机器人在满足价格平衡公式的前提下对任务进行竞拍。本发明同时包括机器人自协调策略和多机器人协调策略,采用以爬山算法为策略基础的最优执行位置法和多机器人协调帕累托原则算法,更改多个机器人任务执行队列中任务的分配关系,进一步提高多机器人系统整体的任务分配质量。
Description
技术领域
本发明属于多机器人任务分配与优化领域,尤其涉及面向ST-SR问题的分布式多机器人系统任务分配方法。
背景技术
随着现代物流信息技术的迅猛发展,采用多机器人系统代替人工来完成繁杂的任务已成趋势。在完成任务的过程中,多机器人协调合作表现出相比于单个机器人更多方面的优势。对单个机器人来说,在面对复杂、数量庞大的任务时,即使功能设计得再强大,其完成任务的能力往往也是非常有限的。而多机器人通过协同工作改进了单个机器人的性能,如执行效率、鲁棒性和容错性等。
多机器人系统的研究增加了许多新问题:如任务分配、协调与合作、多传感数据监测与融合、系统自适应控制、信息通信等。任务分配问题是多机器人系统研究领域的一个难点,它是多机器人系统应用的基础,能够充分体现系统决策层组织形式与运行机制。作为多机器人系统运行高效又稳定的核心模块,任务分配机制是系统最终能顺利完成任务的保证,也是维持系统高效和保持良好健壮性的基础,这种机制体现了分布式系统的高层组织形式和内部具体运行方式。
现有研究任务分配问题的算法中主要有集中式和分布式两种。相对于集中式算法,分布式算法对通信中心的依赖性较小,鲁棒性较好,同时随着多机器人系统规模的扩大,其可扩展性也较好。同时,多机器人系统分布式任务分配算法可协调整个系统的运算能力,可以充分利用机器人的空闲计算能力,均衡多机器人系统计算负载。
发明内容
本发明提出了面向ST-SR问题的分布式多机器人系统任务分配方法,该方法区别于传统的集中式任务分配算法,每个机器人都需要参与到任务分配计算当中,任何一个机器人加入或者离开都不会对多机器人系统的整体计算产生太大影响,具有非常强的鲁棒性。此外,本发明中多机器人系统也不需要依赖某一些重要的中心节点进行计算,所有机器人完全平等,不会有单点失效问题。
本发明的目的是通过以下技术方案实现的:面向ST-SR问题的分布式多机器人系统任务分配方法,包括以下步骤:
步骤1、多机器人系统任务分配问题分类。从机器人能力、任务复杂度和分配时间三个角度对多机器人系统任务分配问题进行分类,仅讨论ST-SR-IA和ST-SR-TA问题。
步骤2、多机器人系统任务分配问题数学模型。针对在线ST-SR任务分配问题进行数学描述,假设有m个机器人组成的机器人集合R={r1,r2,...,rm},有k个任务点组成的任务点集合G={g1,g,...,gk},这些任务点每隔一定时间发布一次任务,任务记为tjl,其中j代表任务编号,l代表任务点编号;机器人ri执行任务tjl可以获得效益Uijl;多机器人系统任务分配的总目标就是给定所有机器人和任务的分配方案,使总效益最大;采用调度模型表示多机器人任务分配的总目标∑Ct,以此满足在线ST-SR任务分配的长期最优性,Ct表示机器人所分配得到任务t的执行效益。
步骤3、最优分配模型。在线ST-SR问题中,任务点不会将所有任务直接发布;多机器人系统在一段时间内,每个机器人收集任务点发布的任务,在这段时间内使用最优分配模型描述这段时间内的ST-SR任务分配问题;最优分配模型可以在一定时间内保证多机器人系统任务分配的最优性,使得这段时间内以调度模型总目标为基准的分配结果也具有一定可靠性。
步骤4、静态任务分配模型。将最优分配模型退化为静态任务分配模型;对于一段时间内发布的任务,每个机器人将这些任务存入自身的任务待分配列表;机器人集合R={r1,r2,...,rm},任务待分配列表中的任务集合T={t1,t2,...,tn},机器人ri执行任务tj可以获得效益Uij,目标是给定这些任务的分配方案,使总效益最大;
根据对偶分解原理,将原先集中式目标转化为其分布式对偶问题目标,以便使用分布式方法求解得到静态任务分配模型的最优解;分布式对偶问题目标为:
其中,pj为公开任务价格,xij表示机器人ri是否分配任务tj,取0为未分配,取1为分配了任务,n为任务数量。
步骤5、根据改进的基于市场机制的竞拍算法分配任务。首先各个机器人独自计算价值列表,然后机器人各自运行改进的基于市场机制的竞拍算法,算法核心为价格平衡公式:
其中,i为机器人编号,j为任务编号,pj(t)为任务当前时间的价格,βij为机器人ri执行任务tj得到的效益,∈为松弛变量参数;βik为机器人ri执行任务tk的价值,此时的βik即为Uik,pk(t)为任务tk当前时间的价格;
所有机器人运行改进的基于市场机制的竞拍算法,在满足价格平衡公式的条件下,整个多机器人系统将会达到渐近平衡状态,每个机器人都能执行对应自己的效益最大任务tk;
引入小额随机价格random,用于保证整个多机器人系统的价格能够合理传递,不会形成局部一致性,引入小额随机价格后的价格更新公式如下:
γi=vi-wi+∈+random,
pk(t+1)=pk(t)+γi
其中,γi表示机器人ri对于当前任务的竞拍价格增量,pk(t)表示竞拍前任务的价格,pk(t+1)表示竞拍后任务的价格,vi和wi分别表示机器人ri最大和第二大的任务净值;
每个机器人改进的基于市场机制的竞拍算法按以下步骤执行:
(1)当前机器人为i,初始化局部价格向量pij和局部竞拍者向量bij,j表示任务集合T中的任务编号;
(3)机器人ri更新任务价格和对应的竞拍者,以及所有机器人价格二维向量和所有机器人竞拍者二维向量;
(4)判断是否重新竞拍,若重新竞拍则进入(5),否则进入(7);
(5)当前机器人ri重新竞拍,选择一个利润最大的任务αi(t+1);
(6)当前机器人ri更新价格和竞拍者列表;
(7)如果(4)中条件不满足,即说明机器人ri仍然竞拍αi(t),那么αi(t+1):=αi(t);
(9)将更新后的局部价格和局部竞拍者信息,以及所有机器人价格二维向量和所有机器人竞拍者二维向量写入缓存,以供其他机器人读取;
完成上述步骤后,机器人判断竞拍停止条件是否满足,竞拍算法退出条件为:
其中,i和k都代表机器人编号;
在满足竞拍算法退出条件后,退出竞拍算法,之后将分配得到的任务置于机器人任务执行队列TEQ末尾,将没有分配完的任务返回任务发布点,参与下一次竞拍分配。
步骤6、机器人任务自协调策略。在自协调策略中引入爬山算法,称之为最优执行位置法;对于新的投标任务,计算机器人将该任务置于任务执行队列TEQ中不同位置的任务执行效益;计算插入新任务前后的差异,并选择价值差异最大的任务插入点上的执行效益作为新任务的执行效益;每个机器人执行自协调策略的具体步骤如下:
(1)机器人ri获取任务待分配列表T={t1,t2,...,tn};
(2)机器人ri对于新投标的任务tj,通过最优执行位置法计算不同位置的Uij(pos);
(3)机器人ri选择Uij(pos)最大的作为该新投标任务的执行效益Uij;
(4)当前新投标任务最优执行位置效益计算完毕,机器人ri计算下一个新投标任务tj+1的最优执行位置效益Uij+1;
(5)直至待分配列表所有任务全部计算完毕,机器人ri退出自协调策略。
步骤7、多机器人任务协调策略。在多机器人任务协调策略中使用帕累托最优原则算法,多个机器人交换各自任务执行队列中的任务,使得总体多机器人系统任务执行效益最大化;每个机器人执行多机器人协调策略的主要步骤如下:
(1)机器人ri初始化,读取邻居协调机器人的协调对象任务执行队列(CoorTEQ);
(2)机器人ri进入协调主过程,并判断是否满足协调要求,如果CoorTEQLength>CoordinateLength,则进入(3),否则退出多机器人任务协调策略,其中,CoorTEQLength为协调对象任务执行队列CoorTEQ长度,CoordinateLength为任务协调长度,表示当前机器人ri在CoorTEQ中的可协调范围;
(3)机器人ri进入协调被动状态,读取当前协调状态,并刷新当前机器人ri的NewCoorTEQ至自身任务执行队列TEQ;
(4)机器人ri判断是否满足协调条件,即自身和邻居机器人都没有处于被协调状态,若满足则进入主动协调(5),否则进入(9)判断协调退出条件;
(5)机器人ri检查协调对象机器人的NewCoorTEQ是否刷新;
(6)机器人ri读取邻居机器人的CoorTEQ;
(7)机器人ri进入多机器人任务协调帕累托最优原则算法;
(8)机器人ri返回协调结果,并向邻居机器人写入CoorTEQ和NewCoorTEQ;
(9)机器人ri判断协调退出条件,即是否已经读取全部邻居机器人所生成的NewCoorTEQ,若满足,则退出协调被动状态,并结束整个协调主过程,否则继续进入协调被动状态;
其中,CoorTEQ由协调对象发送给当前协调机器人,用于当前协调机器人进入主动协调;一旦当前协调机器人完成协调算法,会发送NewCoorTEQ至原先协调对象机器人,修改其任务执行队列TEQ。
本发明的有益效果是:与传统的集中式任务分配方法相比,本发明采用的分布式方法具有更强的可扩展性和鲁棒性,节点的进入和退出都不会对系统整体任务分配产生过大影响。同时,本发明不设立中心节点,所有节点完全平等,不会有节点失效问题。本发明主要面向在线ST-SR问题,以改进的基于市场机制的竞拍算法为核心分配方法,适用所有分布式系统,不依赖同步的时间戳。所有机器人执行各自分配算法,在满足价格平衡公式的前提下对任务进行竞拍。本发明同时包括机器人自协调策略和多机器人协调策略,采用以爬山算法为策略基础的最优执行位置法,改变任务在机器人任务执行队列中的执行顺序,最大化任务执行效益;通过多机器人协调策略,更改多个机器人任务执行队列中任务的分配关系,进一步提高多机器人系统整体的任务分配质量。
附图说明
图1为本发明采用的多机器人系统任务分配方法框架图。
图2为本发明多机器人协调策略框架图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本申请提出的面向ST-SR问题的分布式多机器人系统任务分配方法,包括以下步骤:
步骤1、多机器人系统任务分配问题分类。在本发明中,从机器人能力、任务复杂度和分配时间三个角度对多机器人系统任务分配问题进行分类。
从机器人能力角度,分为单机器人任务(Single Robot,SR)与多机器人任务(Multi-Robots,MR):SR意味着每个任务只需要一个机器人执行,而MR表示每个任务需要多个机器人执行。
从任务复杂度角度,分为单任务机器人(Single Task,ST)与多任务机器人(Multi-Tasks,MT):ST表示每个机器人每次只能执行一个任务,而MT表示每个机器人每次可以执行多个任务。
从分配时间角度,分为即时分配(Instantaneous Assignment,IA)与延时分配(Time-extended Assignment,TA):IA指机器人只能根据目前的系统信息进行任务分配,而TA指考虑更多的系统信息来进行任务分配。
在本发明当中,主要讨论ST-SR-IA和ST-SR-TA问题。
步骤2、多机器人系统任务分配问题数学模型。本发明针对在线ST-SR任务分配问题进行数学描述。本发明的在线ST-SR-IA和ST-SR-TA问题可以用以下形式描述,假设有m个机器人组成的机器人集合R={r1,r2,...,rm},有k个任务点组成的任务点集合G={g1,g,...,gk},这些任务点每隔一定时间发布一次任务,任务记为tjl,其中j代表任务编号,l代表任务点编号。机器人ri执行任务tjl可以获得效益Uijl。
多机器人系统任务分配的总目标就是给定所有机器人和任务的分配方案,使总效益最大。本发明采用调度模型表示多机器人任务分配的总目标∑Ct,以此满足在线ST-SR任务分配的长期最优性。Ct表示机器人所分配得到任务t的执行效益。
步骤3、最优分配模型。在线ST-SR问题中,任务点不会将所有任务直接发布。多机器人系统在一段时间内,每个机器人收集任务点发布的任务,在这段时间内使用最优分配模型描述这段时间内的ST-SR任务分配问题。最优分配模型可以在一定时间内保证多机器人系统任务分配的最优性,使得这段时间内以调度模型总目标为基准的分配结果也具有一定可靠性。
步骤4、静态任务分配模型。多机器人系统在一段时间内的任务分配问题,本发明对其进一步将最优分配模型退化为静态任务分配模型。对于一段时间内发布的任务,每个机器人将这些任务存入自身的任务待分配列表。机器人集合R={r1,r2,...,rm},任务待分配列表中的任务集合T={t1,t2,...,tn},机器人ri执行任务tj可以获得效益Uij,目标是给定这些任务的分配方案,使总效益最大。
根据对偶分解原理,将原先集中式目标转化为其分布式对偶问题目标,以便使用分布式方法求解得到静态任务分配模型的最优解。分布式对偶问题目标为,
其中,pj为公开任务价格,xij表示机器人ri是否分配任务tj,取0为未分配,取1为分配了任务,n为任务数量。
步骤5、根据改进的基于市场机制的竞拍算法分配任务。
改进的基于市场机制的竞拍算法适用所有分布式系统,个体之间的通讯不需要同步的时间戳,算法可以在异步通信条件下实现。
首先各个机器人独自计算价值列表。计算完成后机器人各自运行改进的基于市场机制的竞拍算法。改进的基于市场机制的竞拍算法核心为价格平衡公式,
其中,i为机器人编号,j为任务编号,pj(t)为任务当前时间的价格,βij为机器人ri执行任务tj得到的效益,∈为松弛变量参数。βik为机器人ri执行任务tk的价值,此时的βik即为Uik,pk(t)为任务tk当前时间的价格。
所有机器人运行改进的基于市场机制的竞拍算法,在满足价格平衡公式的条件下,整个多机器人系统将会达到渐近平衡状态,每个机器人都能执行对应自己的效益最大任务tk。其中,松弛变量参数∈能够避免算法进入死循环。
此外,为了适应所有分布式多智能体系统,本发明引入小额随机价格random,用于保证整个多机器人系统的价格能够合理传递,不会形成局部一致性。
引入小额随机价格后的价格更新公式如下,
γi=vi-wi+∈+random,
pk(t+1)=pk(t)+γi
其中,γi表示机器人ri对于当前任务的竞拍价格增量,pk(t)表示竞拍前任务的价格,pk(t+1)表示竞拍后任务的价格,vi和wi分别表示机器人ri最大和第二大的任务净值。
每个机器人改进的基于市场机制的竞拍算法主要按以下步骤执行:
(1)当前机器人为i,初始化局部价格向量pij和局部竞拍者向量bij,j表示任务集合T中的任务编号;
(3)机器人ri更新任务价格和对应的竞拍者,以及所有机器人价格二维向量和所有机器人竞拍者二维向量;
(4)判断是否重新竞拍,若重新竞拍则进入(5),否则进入(7);
(5)当前机器人ri重新竞拍,选择一个利润最大的任务αi(t+1);
(6)当前机器人ri更新价格和竞拍者列表;
(7)如果(4)中条件不满足,即说明机器人ri仍然竞拍αi(t),那么αi(t+1):=αi(t);
(9)将更新后的局部价格和局部竞拍者信息,以及所有机器人价格二维向量和所有机器人竞拍者二维向量写入缓存,以供其他机器人读取。
完成上述步骤后,机器人会判断竞拍停止条件是否满足,对于广义的不带同步时间戳的分布式多机器人系统,竞拍算法退出条件为:
其中,i和k都代表机器人编号。
在满足竞拍算法退出条件后,退出竞拍算法,之后将分配得到的任务置于机器人任务执行队列(TEQ)末尾,将没有分配完的任务返回任务发布点,参与下一次竞拍分配。
步骤6、机器人任务自协调策略。改进的基于市场机制的竞拍算法仅针对静态任务模型进行分配,而在线ST-SR任务分配的总体目标不在单次竞拍算法的可优化能力中,特别是对于单个机器人自身,其任务执行顺序会严重影响机器人的任务执行队列(TEQ)总效益。因此引入机器人协调策略提高在线ST-SR的任务分配能力。
在本发明中,爬山算法思想被设计进入自协调策略,称之为最优执行位置法。其主要思想在于,对于新的投标任务,计算机器人将该任务置于任务执行队列(TEQ)中不同位置的任务执行效益。计算插入新任务前后的差异,并选择价值差异最大的任务插入点上的执行效益作为新任务的执行效益。
每个机器人执行自协调策略的具体步骤如下:
(1)机器人ri获取任务待分配列表T={t1,t2,...,tn};
(2)机器人ri对于新投标的任务tj,通过最优执行位置法计算不同位置的Uij(pos);
(3)机器人ri选择Uij(pos)最大的作为该新投标任务的执行效益Uij;
(4)当前新投标任务最优执行位置效益计算完毕,机器人ri计算下一个新投标任务tj+1的最优执行位置效益Uij+1;
(5)直至待分配列表所有任务全部计算完毕,机器人ri退出自协调策略。
步骤7、多机器人任务协调策略。图2为本发明多机器人协调策略框架图。
不同机器人在经过竞拍算法后的单局分配结果能够达到全局最优,最优分配的结果会被储存到每个机器人的TEQ。对于不同竞拍局所分配的任务,可能会有一些任务存在协同关系。因此采用多机器人协调策略,策略中使用帕累托最优原则算法,多个机器人交换各自任务执行队列中的任务,使得总体多机器人系统任务执行效益最大化。
每个机器人执行多机器人协调策略的主要步骤如下:
(1)机器人ri初始化,读取邻居协调机器人的协调对象任务执行队列(CoorTEQ);
(2)机器人ri进入协调主过程,并判断是否满足协调要求,如果CoorTEQLength>CoordinateLength,则进入(3),否则退出多机器人任务协调策略。其中,CoorTEQLength为协调对象任务执行队列(CoorTEQ)长度,CoordinateLength为任务协调长度,表示当前机器人ri在CoorTEQ中的可协调范围;
(3)机器人ri进入协调被动状态,读取当前协调状态,并刷新当前机器人ri的NewCoorTEQ至自身任务执行队列(TEQ);
(4)机器人ri判断是否满足协调条件,即自身和邻居机器人都没有处于被协调状态,若满足则进入主动协调(5),否则进入(9)判断协调退出条件;
(5)机器人ri检查协调对象机器人的NewCoorTEQ是否刷新;
(6)机器人ri读取邻居机器人的CoorTEQ;
(7)机器人ri进入多机器人任务协调帕累托最优原则算法;
(8)机器人ri返回协调结果,并向邻居机器人写入CoorTEQ和NewCoorTEQ;
(9)机器人ri判断协调退出条件,即是否已经读取全部邻居机器人所生成的NewCoorTEQ。若满足,则退出协调被动状态,并结束整个协调主过程,否则继续进入协调被动状态。
其中,CoorTEQ由协调对象发送给当前协调机器人,用于当前协调机器人进入主动协调。一旦当前协调机器人完成协调算法,会发送NewCoorTEQ至原先协调对象机器人,修改其任务执行队列(TEQ)。
进一步地,所述步骤2多机器人系统任务分配问题数学模型中,其效益公式和调度模型如下:
本发明采用的效益公式包括,
其中dijl为机器人从当前位置到任务执行终点的距离,Uijl为机器人执行对应任务的效益。
其中(xtaskStart,ytaskStart)为任务tjl的起点坐标,(xtaskEnd,ytaskEnd)为任务tjl的终点坐标,(xr,yr)表示机器人的位置坐标。
多机器人系统任务分配的总目标就是给定所有机器人和任务的分配方案,使总效益最大。本发明采用调度模型表示多机器人任务分配的总目标,调度模型如下:
R||∑Ct
整个多机器人系统由R个机器人组成。多机器人系统调度总目标为∑Ct,表示所有机器人的分配任务执行效益总和,Ct表示机器人所分配得到任务t的执行效益。
在本发明中,机器人分配所得的任务会被存储到自身的任务执行队列(TEQ)中。因此,∑Ct也就是所有机器人任务执行队列的效益总和。
进一步地,所述步骤3中,在一段时间内,多机器人系统任务分配问题可用最优分配模型表示:
xijl∈{0,1}
其中,xijl表示机器人ri是否分配了任务发布点gl发布的任务tjl,取0为未分配,取1为分配了任务;Uijl表示机器人ri执行任务发布点gl发布的任务tjl获得的效益;约束(1)表示每一个机器人任务有且仅有一个机器人执行;约束(2)表示机器人ri最大可执行的任务总量为Ni。
在这一段时间当中,多机器人系统任务分配总目标即∑Ct可以表示为,
进一步地,所述步骤4中,静态任务分配模型如下:
机器人集合R={r1,r2,...,rm},任务待分配列表中的任务集合T={t1,t2,...,tn},机器人ri执行任务tj可以获得效益Uij,目标是给定这些任务的分配方案,使总效益最大。
xij∈{0,1}
其中,xij表示机器人ri是否分配了任务tj,取0为未分配,取1为分配了任务;Uij表示机器人ri执行任务tj获得的效益;第一个约束表示每一个机器人任务有且仅有一个机器人执行;第二个约束表示机器人ri最大可执行的任务总量为Ni。
根据对偶分解原理,将第一个约束对偶化,原问题转化其对偶问题,
其中pj为任务tj所对应的对偶变量,称之为tj的价格,记p={p1,p2,...,pn}。如果价格向量固定,可以通过对每个机器人ri求解下述问题实现整体目标,
进一步地,所述步骤5中,计算价值列表包括:
从任务待分配列表中取出任务,并计算每个任务的价值,组成价值列表,单个常规价值计算表达式为,
Value=1/Distance
其中,(xtaskbegin,ytaskbegin)为任务的起点坐标,(xtaskend,ytaskend)为任务的终点坐标,(xrobot,yrobot)表示机器人的位置坐标,Distance为机器人执行该任务的距离,Value为任务价值。
进一步地,所述步骤5中,单个机器人的竞拍流程如下:
本发明采用改进的基于市场机制的竞拍算法,吸取博弈论纳什平衡思想,在每一竞拍局中构建虚拟市场,每一个机器人都是虚拟市场参与者。在给定的一个任务集合中,任务都带有一个价格pj(t)>0,分配这些任务的机器人必须支付这个价格,故机器人ri执行该任务tj的净值为βij-pj(t),每个机器人都希望分配得到净值最高的任务,
其中,βik为机器人ri执行任务tk的价值,此时的βik即为Uik,pk为任务tk价格,j代表任务编号。
如果所有机器人都满足上述公式,则称分配和价格处理平衡状态。此时它们对应的即是静态任务分配问题的最优解,故称上述公式为价格平衡公式。
然而简单的平衡状态存在算法循环的可能性,故在本发明中引入几乎平衡概念和松弛变量参数∈,用于保证每次竞拍都能以至少一个∈的增量提高任务价格,而机器人也必须承担∈的风险。
机器人对于市场中参与竞拍的任务都可以发起竞拍。为使当前机器人能够牢牢掌握所竞拍的任务,所竞拍任务会有价格更新,其价格更新公式如下:
γi=vi-wi+∈
pk(t+1)=pk(t)+γi
其中,γi表示机器人ri对于当前任务的竞拍价格增量,pk(t)表示竞拍前任务的价格,pk(t+1)表示竞拍后任务的价格,vi和wi分别表示机器人ri最大和第二大的任务净值,
大部分分布式系统都采用异步通信方式,不会带有同步的时间戳。然而完全异步通信方式会导致普通基于市场机制的竞拍算法陷入局部一致性,即整个多机器人系统会分割为几个小团体,各自形成价格平衡。
故在本发明中,改进的基于市场机制的竞拍算法引入小额随机价格random,用于保证整个多机器人系统的价格能够合理传递,不会形成局部一致性。
引入小额随机价格后的价格更新公式如下,
γi=vi-wi+∈+random,
pk(t+1)=pk(t)+γi
根据以上算法描述,本发明采取的单个机器人改进的基于市场机制的竞拍算法流程如下:
(1)记当前机器人为i,初始化局部价格向量pij和局部竞拍者向量bij,j表示任务集合T中的任务编号。
pij=0,j=1,2...,n
bij=-1,j=1,2...,n
(3)机器人ri更新任务价格和对应的竞拍者,以及所有机器人价格二维向量和所有机器人竞拍者二维向量。
在改进的市场机制竞拍算法中,当前机器人ri从邻居机器人的缓存中读取其相应的公开价格GP和公开竞拍者GB,
其中,j表示任务集合T中的任务编号,pij(t+1)表示机器人ri对任务tj下一时刻的出价,pij(t)为机器人ri对任务tj此时的出价。Adji(t)为机器人ri此时的邻居机器人集合,GPkj(t)为邻居机器人对任务tj此时的出价。bij(t+1)为机器人ri对任务tj下一时刻竞拍者信息,bkj(t)为对任务tj此时出价最高的机器人的竞拍者信息,GBkj(t)表示邻居机器人对任务tj此时出价最高的机器的竞拍者信息,z为其他机器人编号。
在改进的市场机制竞拍算法中,当前机器人ri从邻居机器人的缓存中读取其相应的公开所有机器人价格GAP和公开竞拍者GAB,并更新自身的所有机器人价格二维向量和所有机器人竞拍者二维向量,
其中,表示机器人i下一时刻的所有机器人价格二维向量,表示机器人i此时的所有机器人价格二维向量,表示机器人k此时的公开所有机器人价格。表示机器人i下一时刻的所有机器人竞拍者二维向量,表示机器人i此时的所有机器人竞拍者二维向量,表示机器人此时的出价最高的所有机器人竞拍者信息,表示机器人此时的出价最高的公开所有机器人竞拍者信息。u表示机器人编号,j表示任务编号。
(5)当前机器人ri重新竞拍,选择一个利润最大的任务αi(t+1);
(6)当前机器人ri更新价格和竞拍者列表;
(7)如果(4)中条件不满足,即说明机器人ri仍然竞拍αi(t),那么αi(t+1):=αi(t);
(9)将更新后的局部价格和局部竞拍者信息,以及所有机器人价格二维向量和所有机器人竞拍者二维向量写入缓存,以供其他机器人读取。
进一步地,所述步骤5中,竞拍算法的退出条件:
本发明采用的基于市场机制的机器人任务分配处理方法在每一竞拍局中都会产生许多次竞拍。对于每一个机器人来说,自身都有一个特定的迭代停止条件,用于控制算法运行,同时产生分配结果。对于有同步时间戳的分布式系统,其竞拍算法退出条件为:持续Δ-1次价格更新,任务价格不发生变化。
然而,在一般系统中,机器人接收和发送命令都为异步进行。因此,上述持续Δ-1次价格更新就停止迭代的基本条件会受到异步IO的干扰,这个基本收敛条件仅针对有同步时间戳的系统,并不适用广义的分布式多机器人系统。
其中,i和k都代表机器人编号。
进一步地,所述步骤6中使用改进的爬山算法作为策略基础设计最优执行位置法:
在本发明中,爬山算法思想被设计进入自协调策略,称之为最优执行位置法。其主要思想在于,对于新的投标任务,计算机器人将该任务置于任务执行队列(TEQ)中不同位置的任务执行效益。计算插入新任务前后的差异,并选择价值差异最大的任务插入点上的执行效益作为新任务的执行效益。
假设机器人ri的新投标任务为tj,机器人ri在插入新任务前的任务执行队列为TEQ={t(i,0),t(i,1),…·,t(i,s-1)},s为未加入新任务前的TEQ长度。假设新插入的位置在TEQ末尾,表示为pos(s),机器人ri在插入新任务后的任务执行队列为TEQ={t(i,0),t(i,1),…·,t(i,s-1),tj},此时pos(s)处的新任务执行效益为Uij(pos),
Uij(pos)=Vnew-Vold
其中,Vnew是机器人ri加上新任务后的TEQ执行总效益,Vold是机器人ri没有新任务的TEQ执行总效益。
其中,Distanceold和Distancenew为机器人ri加入新任务前后的TEQ执行总距离,为机器人ri的位置坐标,分别表示t(i,0)、t(i,s-1)、tj的起点坐标,分别表示任务t(i,0)、t(i,s-1)、tj的终点坐标。
除了将新任务插入至TEQ末尾pos(s),再继续计算不同的插入位置pos(0)~pos(s-1)的新任务执行效益为Uij(pos),再计算s个插入位置中最大的Uij(pos)作为机器人ri的对新投标任务tj的执行效益Uij。
机器人自协调策略最优执行位置法具体步骤如下:
(1)机器人ri获取任务待分配列表T={t1,t2,...,tn};
(2)机器人ri对于新投标的任务tj,通过最优执行位置法计算不同位置的Uij(pos);
(3)机器人ri选择Uij(pos)最大的作为该新投标任务的执行效益Uij;
(4)当前新投标任务最优执行位置效益计算完毕,机器人ri计算下一个新投标任务tj+1的最优执行位置效益Uij+1;
(5)直至待分配列表所有任务全部计算完毕,机器人ri退出自协调策略。
进一步地,所述步骤7中的多机器人任务协调策略,其具体步骤如下:
(1)机器人ri初始化,读取邻居协调机器人的协调对象任务执行队列(CoorTEQ);
(2)机器人ri进入协调主过程,并判断是否满足协调要求,如果CoorTEQLength>CoordinateLength,则进入(3),否则退出多机器人任务协调策略。其中,CoorTEQLength为协调对象任务执行队列(CoorTEQ)长度,CoordinateLength为任务协调长度,表示当前机器人ri在CoorTEQ中的可协调范围;
(3)机器人ri进入协调被动状态,读取当前协调状态,并刷新当前机器人ri的NewCoorTEQ至自身任务执行队列(TEQ);
(4)机器人ri判断是否满足协调条件,即自身和邻居机器人都没有处于被协调状态,若满足则进入主动协调(5),否则进入(9)判断协调退出条件;
(5)机器人ri检查协调对象机器人的NewCoorTEQ是否刷新;
(6)机器人ri读取邻居机器人的CoorTEQ;
(7)机器人ri进入多机器人任务协调帕累托最优原则算法;
(8)机器人ri返回协调结果,并向邻居机器人写入CoorTEQ和NewCoorTEQ;
(9)机器人ri判断协调退出条件,即是否已经读取全部邻居机器人所生成的NewCoorTEQ。若满足,则退出协调被动状态,并结束整个协调主过程,否则继续进入协调被动状态;
其中,CoorTEQ由协调对象发送给当前协调机器人,用于当前协调机器人进入主动协调。一旦当前协调机器人完成协调算法,会发送NewCoorTEQ至原先协调对象机器人,修改其任务执行队列(TEQ)。
进一步地,所述步骤7多机器人任务协调策略中的多机器人任务协调帕累托最优原则算法,其具体步骤如下:
(a)当前主动协调机器人ri和协调对象机器人rp通过竞拍算法分别获得任务ti和tp;
(b)主动协调机器人ri读取协调对象机器人rp的CoorTEQ,并计算原始联合任务执行队列效益(OriginTEQUtility),设机器人ri的任务执行队列为TEQ={t(i,0),t(i,1),…,t(i,s-1),ti},机器人rp的任务执行队列为TEQ={t(p,0),t(p,1),…,t(p,s-1),tp},s为加入新任务前的TEQ长度。
其中,OriginCurrentTEQDistance为原始当前机器人ri的TEQ有效执行总距离,OriginCoorTEQDistance为原始协调对象机器人rp的TEQ执行总距离。 分别表示t(p,0)、tp、ti的起点坐标, 分别表示任务t(p,0)、t(i,s-1)、tp、ti的终点坐标。
(c)主动协调机器人ri将当前分配任务ti与协调对象机器人rp的任务t(p,s-1)进行交换,并计算交换联合任务执行队列效益(SwapTEQUtility),交换后机器人ri的任务执行队列为TEQ={t(i,0),t(i,1),…,t(i,s-1),t(p,s-1)},机器人rp的任务执行队列为TEQ={t(p,0),t(p,1),…,ti,tp},
其中,SwapCurrentTEQDistance为交换后当前机器人ri的TEQ有效执行总距离,SwapCoorTEQDistance为交换后协调对象机器人rp的TEQ执行总距离。
(d)判断机器人ri和协调对象机器人rp任务协调前后的OriginTEQUtility和SwapTEQUtility是否变化,若SwapTEQUtility>OriginTEQUtility则可以预协调,并记录SwapTEQUtility。
(e)机器人ri对协调对象机器人rp的CoorTEQ协调长度内所有任务进行上述处理,选择SwapTEQUtility最大的任务进行最终协调,并返回结果。
以上所述仅是本发明的优选实施方式,虽然本发明已以较佳实施例披露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (8)
1.一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,包括以下步骤:
步骤1、多机器人系统任务分配问题分类;从机器人能力、任务复杂度和分配时间三个角度对多机器人系统任务分配问题进行分类,仅讨论ST-SR-IA和ST-SR-TA问题;
步骤2、多机器人系统任务分配问题数学模型;针对在线ST-SR任务分配问题进行数学描述,假设有m个机器人组成的机器人集合R={r1,r2,...,rm},有k个任务点组成的任务点集合G={g1,g,...,gk},这些任务点每隔一定时间发布一次任务,任务记为tjl,其中j代表任务编号,l代表任务点编号;机器人ri执行任务tjl可以获得效益Uijl;多机器人系统任务分配的总目标就是给定所有机器人和任务的分配方案,使总效益最大;采用调度模型表示多机器人任务分配的总目标∑Ct,以此满足在线ST-SR任务分配的长期最优性,Ct表示机器人所分配得到任务t的执行效益;
步骤3、最优分配模型;在线ST-SR问题中,任务点不会将所有任务直接发布;多机器人系统在一段时间内,每个机器人收集任务点发布的任务,在这段时间内使用最优分配模型描述这段时间内的ST-SR任务分配问题;最优分配模型可以在一定时间内保证多机器人系统任务分配的最优性,使得这段时间内以调度模型总目标为基准的分配结果也具有一定可靠性;
步骤4、静态任务分配模型;将最优分配模型退化为静态任务分配模型;对于一段时间内发布的任务,每个机器人将这些任务存入自身的任务待分配列表;机器人集合R={r1,r2,...,rm},任务待分配列表中的任务集合T={t1,t2,...,tn},机器人ri执行任务tj可以获得效益Uij,目标是给定这些任务的分配方案,使总效益最大;
根据对偶分解原理,将原先集中式目标转化为其分布式对偶问题目标,以便使用分布式方法求解得到静态任务分配模型的最优解;分布式对偶问题目标为:
其中,pj为公开任务价格,xij表示机器人ri是否分配任务tj,取0为未分配,取1为分配了任务,n为任务数量;
步骤5、根据改进的基于市场机制的竞拍算法分配任务;首先各个机器人独自计算价值列表,然后机器人各自运行改进的基于市场机制的竞拍算法,算法核心为价格平衡公式:
其中,i为机器人编号,j为任务编号,pj(t)为任务当前时间的价格,βij为机器人ri执行任务tj得到的效益,∈为松弛变量参数;βik为机器人ri执行任务tk的价值,此时的βik即为Uik,pk(t)为任务tk当前时间的价格;
所有机器人运行改进的基于市场机制的竞拍算法,在满足价格平衡公式的条件下,整个多机器人系统将会达到渐近平衡状态,每个机器人都能执行对应自己的效益最大任务tk;
引入小额随机价格random,用于保证整个多机器人系统的价格能够合理传递,不会形成局部一致性,引入小额随机价格后的价格更新公式如下:
γi=vi-wi+∈+random,
pk(t+1)=pk(t)+γi
其中,γi表示机器人ri对于当前任务的竞拍价格增量,pk(t)表示竞拍前任务的价格,pk(t+1)表示竞拍后任务的价格,vi和wi分别表示机器人ri最大和第二大的任务净值;
每个机器人改进的基于市场机制的竞拍算法按以下步骤执行:
(1)当前机器人为i,初始化局部价格向量pij和局部竞拍者向量bij,j表示任务集合T中的任务编号;
(2)初始化所有机器人价格二维向量和所有机器人竞拍者二维向量u表示机器人集合R={r1,r2,...,rm}中的机器人编号,j表示任务集合T中的任务编号;
(3)机器人ri更新任务价格和对应的竞拍者,以及所有机器人价格二维向量和所有机器人竞拍者二维向量;
(4)判断是否重新竞拍,若重新竞拍则进入(5),否则进入(7);
(5)当前机器人ri重新竞拍,选择一个利润最大的任务αi(t+1);
(6)当前机器人ri更新价格和竞拍者列表;
(7)如果(4)中条件不满足,即说明机器人ri仍然竞拍αi(t),那么αi(t+1):=αi(t);
(8)将出价和竞拍者信息写入所有机器人价格二维向量和所有机器人竞拍者二维向量
(9)将更新后的局部价格和局部竞拍者信息,以及所有机器人价格二维向量和所有机器人竞拍者二维向量写入缓存,以供其他机器人读取;
完成上述步骤后,机器人判断竞拍停止条件是否满足,竞拍算法退出条件为:
对于机器人ri,其第一维各个机器人的第二维竞拍者信息全部相同;
其中,i和k都代表机器人编号;
在满足竞拍算法退出条件后,退出竞拍算法,之后将分配得到的任务置于机器人任务执行队列TEQ末尾,将没有分配完的任务返回任务发布点,参与下一次竞拍分配;
步骤6、机器人任务自协调策略;在自协调策略中引入爬山算法,称之为最优执行位置法;对于新的投标任务,计算机器人将该任务置于任务执行队列TEQ中不同位置的任务执行效益;计算插入新任务前后的差异,并选择价值差异最大的任务插入点上的执行效益作为新任务的执行效益;每个机器人执行自协调策略的具体步骤如下:
(1)机器人ri获取任务待分配列表T={t1,t2,...,tn};
(2)机器人ri对于新投标的任务tj,通过最优执行位置法计算不同位置的Uij(pos);
(3)机器人ri选择Uij(pos)最大的作为该新投标任务的执行效益Uij;
(4)当前新投标任务最优执行位置效益计算完毕,机器人ri计算下一个新投标任务tj+1的最优执行位置效益Uij+1;
(5)直至待分配列表所有任务全部计算完毕,机器人ri退出自协调策略;
步骤7、多机器人任务协调策略;在多机器人任务协调策略中使用帕累托最优原则算法,多个机器人交换各自任务执行队列中的任务,使得总体多机器人系统任务执行效益最大化;每个机器人执行多机器人协调策略的主要步骤如下:
(1)机器人ri初始化,读取邻居协调机器人的协调对象任务执行队列CoorTEQ;
(2)机器人ri进入协调主过程,并判断是否满足协调要求,如果CoorTEQLength>CoordinateLength,则进入(3),否则退出多机器人任务协调策略,其中,CoorTEQLength为协调对象任务执行队列CoorTEQ长度,CoordinateLength为任务协调长度,表示当前机器人ri在CoorTEQ中的可协调范围;
(3)机器人ri进入协调被动状态,读取当前协调状态,并刷新当前机器人ri的NewCoorTEQ至自身任务执行队列TEQ;
(4)机器人ri判断是否满足协调条件,即自身和邻居机器人都没有处于被协调状态,若满足则进入主动协调(5),否则进入(9)判断协调退出条件;
(5)机器人ri检查协调对象机器人的NewCoorTEQ是否刷新;
(6)机器人ri读取邻居机器人的CoorTEQ;
(7)机器人ri进入多机器人任务协调帕累托最优原则算法;
(8)机器人ri返回协调结果,并向邻居机器人写入CoorTEQ和NewCoorTEQ;
(9)机器人ri判断协调退出条件,即是否已经读取全部邻居机器人所生成的NewCoorTEQ,若满足,则退出协调被动状态,并结束整个协调主过程,否则继续进入协调被动状态;
其中,CoorTEQ由协调对象发送给当前协调机器人,用于当前协调机器人进入主动协调;一旦当前协调机器人完成协调算法,会发送NewCoorTEQ至原先协调对象机器人,修改其任务执行队列TEQ。
2.根据权利要求1所述的一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,所述步骤2多机器人系统任务分配问题数学模型中,效益公式如下:
其中dijl为机器人从当前位置到任务执行终点的距离,Uijl为机器人执行对应任务的效益;(xtaskStart,ytaskStart)为任务tjl的起点坐标,(xtaskEnd,ytaskEnd)为任务tjl的终点坐标,(xr,yr)表示机器人的位置坐标;
调度模型如下:
R||∑Ct
整个多机器人系统由R个机器人组成;多机器人系统调度总目标为∑Ct,表示所有机器人的分配任务执行效益总和,Ct表示机器人所分配得到任务t的执行效益。
3.根据权利要求1所述的一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,所述步骤3中,最优分配模型如下:
其中,xijl表示机器人ri是否分配了任务发布点gl发布的任务tjl,取0为未分配,取1为分配了任务;Uijl表示机器人ri执行任务发布点gl发布的任务tjl获得的效益;第一个约束表示每一个机器人任务有且仅有一个机器人执行;第二个约束表示机器人ri最大可执行的任务总量为Ni;
在这一段时间当中,多机器人系统任务分配总目标即∑Ct可以表示为:
4.根据权利要求1所述的一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,所述步骤4中,静态任务分配模型如下:
其中,xij表示机器人ri是否分配了任务tj,取0为未分配,取1为分配了任务;Uij表示机器人ri执行任务tj获得的效益;第一个约束表示每一个机器人任务有且仅有一个机器人执行;第二个约束表示机器人ri最大可执行的任务总量为Ni;
根据对偶分解原理,将第一个约束对偶化,原问题转化其对偶问题:
其中,pj为任务tj所对应的对偶变量,称之为tj的价格,记p={p1,p2,...,pn};如果价格向量固定,可以通过对每个机器人ri求解下述问题实现整体目标:
5.根据权利要求1所述的一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,所述步骤5中,从任务待分配列表中取出任务,并计算每个任务的价值,组成价值列表,单个常规价值计算表达式为,
Value=1/Distance
其中,(xtaskbegin,ytaskbegin)为任务的起点坐标,(xtaskend,ytaskend)为任务的终点坐标,(xrobot,yrobot)表示机器人的位置坐标,Distance为机器人执行该任务的距离,Value为任务价值。
6.根据权利要求1所述的一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,所述步骤5中,单个机器人改进的基于市场机制的竞拍算法流程具体如下:
(1)记当前机器人为i,初始化局部价格向量pij和局部竞拍者向量bij,j表示任务集合T中的任务编号;
pij=0,j=1,2...,n
bij=-1,j=1,2...,n
(2)初始化所有机器人价格二维向量和所有机器人竞拍者二维向量u表示机器人集合R={r1,r2,...,rm}中的机器人编号,j表示任务集合T中的任务编号;
(3)机器人ri更新任务价格和对应的竞拍者,以及所有机器人价格二维向量和所有机器人竞拍者二维向量;
在改进的市场机制竞拍算法中,当前机器人ri从邻居机器人的缓存中读取其相应的公开价格GP和公开竞拍者GB:
其中,j表示任务集合T中的任务编号,pij(t+1)表示机器人ri对任务tj下一时刻的出价,pij(t)为机器人ri对任务tj此时的出价;Adji(t)为机器人ri此时的邻居机器人集合,GPkj(t)为邻居机器人对任务tj此时的出价;bij(t+1)为机器人ri对任务tj下一时刻竞拍者信息,bkj(t)为对任务tj此时出价最高的机器人的竞拍者信息,GBkj(t)表示邻居机器人对任务tj此时出价最高的机器的竞拍者信息,z为其他机器人编号;
在改进的市场机制竞拍算法中,当前机器人ri从邻居机器人的缓存中读取其相应的公开所有机器人价格GAP和公开竞拍者GAB,并更新自身的所有机器人价格二维向量和所有机器人竞拍者二维向量:
其中,表示机器人i下一时刻的所有机器人价格二维向量,表示机器人i此时的所有机器人价格二维向量,表示机器人良此时的公开所有机器人价格;表示机器人i下一时刻的所有机器人竞拍者二维向量,表示机器人i此时的所有机器人竞拍者二维向量,表示机器人此时的出价最高的所有机器人竞拍者信息,表示机器人此时的出价最高的公开所有机器人竞拍者信息;u表示机器人编号,j表示任务编号;
(4)记当前机器人ri所竞拍的任务为αi(t),如果满足且进入(3),否则进入(7);其中,为当前机器人ri对任务αi(t)的出价,为下一时刻机器人ri对任务αi(t)的出价,为下一时刻机器人ri对任务αi(t)的竞拍者信息;
(5)当前机器人ri重新竞拍,选择一个利润最大的任务αi(t+1);
(6)当前机器人ri更新价格和竞拍者列表;
其中,为下一时刻机器人ri对任务αi(t+1)的出价,为当前时刻机器人对ri任务αi(t+1)的出价,γi为价格增量;
(7)如果(4)中条件不满足,即说明机器人ri仍然竞拍αi(t),那么αi(t+1):=αi(t);
(8)将出价和竞拍者信息写入所有机器人价格二维向量和所有机器人竞拍者二维向量
其中,为下一时刻机器人ri的所有机器人价格二维向量的本身部分,为下一时刻机器人ri的所有机器人竞拍者二维向量的本身部分;
(9)将更新后的局部价格和局部竞拍者信息,以及所有机器人价格二维向量和所有机器人竞拍者二维向量写入缓存,以供其他机器人读取。
7.根据权利要求1所述的一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,所述步骤6中使用改进的爬山算法作为策略基础设计最优执行位置法,假设机器人ri的新投标任务为tj,机器人ri在插入新任务前的任务执行队列为TEQ={t(i,0),t(i,1),····,t(i,s-1)},s为未加入新任务前的TEQ长度;假设新插入的位置在TEQ末尾,表示为pos(s),机器人ri在插入新任务后的任务执行队列为TEQ={t(i,0),t(i,1),…·,t(i,s-1),tj},此时pos(s)处的新任务执行效益为Uij(pos):
Uij(pos)=Vnew-Vold
其中,Vnew是机器人ri加上新任务后的TEQ执行总效益,Vold是机器人ri没有新任务的TEQ执行总效益;
其中,Distanceold和Distancenew为机器人ri加入新任务前后的TEQ执行总距离,为机器人ri的位置坐标,分别表示t(i,0)、t(i,s-1)、tj的起点坐标,分别表示任务t(i,0)、t(i,s-1)、tj的终点坐标;
除了将新任务插入至TEQ末尾pos(s),再继续计算不同的插入位置pos(0)~pos(s-1)的新任务执行效益为Uij(pos),再计算s个插入位置中最大的Uij(pos)作为机器人ri的对新投标任务tj的执行效益Uij。
8.根据权利要求1所述的一种面向在线ST-SR问题的分布式多机器人系统任务分配方法,其特征在于,所述步骤7多机器人任务协调策略中的多机器人任务协调帕累托最优原则算法,其具体步骤如下:
(a)当前主动协调机器人ri和协调对象机器人rp通过竞拍算法分别获得任务ti和tp;
(b)主动协调机器人ri读取协调对象机器人rp的CoorTEQ,并计算原始联合任务执行队列效益OriginTEQUtility,设机器人ri的任务执行队列为TEQ={t(i,0),t(i,1),…,t(i,s-1),ti},机器人rp的任务执行队列为TEQ={t(p,0),t(p,1),…,t(p,s-1),tp},s为加入新任务前的TEQ长度;
其中,OriginCurrentTEQDistance为原始当前机器人ri的TEQ有效执行总距离,OriginCoorTEQDistance为原始协调对象机器人rp的TEQ执行总距离; 分别表示t(p,0)、tp、ti的起点坐标, 分别表示任务t(p,0)、t(i,s-1)、tp、ti的终点坐标;
(c)主动协调机器人ri将当前分配任务ti与协调对象机器人rp的任务t(p,s-1)进行交换,并计算交换联合任务执行队列效益SwapTEQUtility,交换后机器人ri的任务执行队列为TEQ={t(i,0),t(i,1),…,t(i,s-1),t(p,s-1)},机器人rp的任务执行队列为TEQ={t(p,0),t(p,1),…,ti,tp},
其中,SwapCurrentTEQDistance为交换后当前机器人ri的TEQ有效执行总距离,SwapCoorTEQDistance为交换后协调对象机器人rp的TEQ执行总距离;
(d)判断机器人ri和协调对象机器人rp任务协调前后的OriginTEQUtility和SwapTEQUtility是否变化,若SwapTEQUtility>OriginTEQUtility则可以预协调,并记录SwapTEQUtility;
(e)机器人ri对协调对象机器人rp的CoorTEQ协调长度内所有任务进行上述处理,选择SwapTEQUtility最大的任务进行最终协调,并返回结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010508817.5A CN111680836B (zh) | 2020-06-06 | 2020-06-06 | 面向st-sr问题的分布式多机器人系统任务分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010508817.5A CN111680836B (zh) | 2020-06-06 | 2020-06-06 | 面向st-sr问题的分布式多机器人系统任务分配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111680836A CN111680836A (zh) | 2020-09-18 |
CN111680836B true CN111680836B (zh) | 2023-05-02 |
Family
ID=72454357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010508817.5A Active CN111680836B (zh) | 2020-06-06 | 2020-06-06 | 面向st-sr问题的分布式多机器人系统任务分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111680836B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112465391B (zh) * | 2020-12-11 | 2022-06-14 | 福州大学 | 一种基于博弈论的分布式智能工厂供应任务分配方法 |
CN112785132B (zh) * | 2021-01-14 | 2022-10-21 | 北京理工大学 | 一种用于智能仓库的多机器人移动货架任务分配方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105068550A (zh) * | 2015-08-21 | 2015-11-18 | 燕山大学 | 一种基于拍卖模式的水下机器人多目标选择策略 |
CN105843227A (zh) * | 2016-04-15 | 2016-08-10 | 上海大学 | 一种基于任务密集度动态调整的多机器人协作围捕任务分配方法 |
CN106875090A (zh) * | 2017-01-09 | 2017-06-20 | 中南大学 | 一种面向动态任务的多机器人分布式任务分配形成方法 |
CN108830483A (zh) * | 2018-06-15 | 2018-11-16 | 桂林电子科技大学 | 多智能体系统任务规划方法 |
CN109919431A (zh) * | 2019-01-28 | 2019-06-21 | 重庆邮电大学 | 基于拍卖算法的异构多机器人任务分配方法 |
CN110458470A (zh) * | 2019-08-19 | 2019-11-15 | 杭州电子科技大学 | 基于大邻域搜索算法的多敏捷地球观测卫星任务分配方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180326581A1 (en) * | 2017-05-11 | 2018-11-15 | King Fahd University Of Petroleum And Minerals | System and method for auction-based and adaptive multi-threshold multi-agent task allocation |
US10456912B2 (en) * | 2017-05-11 | 2019-10-29 | King Fahd University Of Petroleum And Minerals | Dynamic multi-objective task allocation |
-
2020
- 2020-06-06 CN CN202010508817.5A patent/CN111680836B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105068550A (zh) * | 2015-08-21 | 2015-11-18 | 燕山大学 | 一种基于拍卖模式的水下机器人多目标选择策略 |
CN105843227A (zh) * | 2016-04-15 | 2016-08-10 | 上海大学 | 一种基于任务密集度动态调整的多机器人协作围捕任务分配方法 |
CN106875090A (zh) * | 2017-01-09 | 2017-06-20 | 中南大学 | 一种面向动态任务的多机器人分布式任务分配形成方法 |
CN108830483A (zh) * | 2018-06-15 | 2018-11-16 | 桂林电子科技大学 | 多智能体系统任务规划方法 |
CN109919431A (zh) * | 2019-01-28 | 2019-06-21 | 重庆邮电大学 | 基于拍卖算法的异构多机器人任务分配方法 |
CN110458470A (zh) * | 2019-08-19 | 2019-11-15 | 杭州电子科技大学 | 基于大邻域搜索算法的多敏捷地球观测卫星任务分配方法 |
Non-Patent Citations (1)
Title |
---|
许可 ; 宫华 ; 秦新立 ; 张博渊 ; .基于分布式拍卖算法的多无人机分组任务分配.信息与控制.2018,(第03期),第341-346. * |
Also Published As
Publication number | Publication date |
---|---|
CN111680836A (zh) | 2020-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yao et al. | An iterative strategy for task assignment and path planning of distributed multiple unmanned aerial vehicles | |
Kraus et al. | Coalition formation with uncertain heterogeneous information | |
CN111680836B (zh) | 面向st-sr问题的分布式多机器人系统任务分配方法 | |
Khan et al. | Non-cooperative, semi-cooperative, and cooperative games-based grid resource allocation | |
Lee et al. | A real-time group auction system for efficient allocation of cloud internet applications | |
Dewan et al. | Auction-based distributed scheduling in a dynamic job shop environment | |
JP2002521756A (ja) | 資産集約製造業者のためのコンピュータ実装される価値管理ツール | |
Xu et al. | Cost-aware resource management for federated clouds using resource sharing contracts | |
Lim et al. | Incentive mechanism design for resource sharing in collaborative edge learning | |
CN111798097B (zh) | 一种基于市场机制的自主移动机器人任务分配处理方法 | |
Guo et al. | A computational analysis of bundle trading markets design for distributed resource allocation | |
Gerkey et al. | A market-based formulation of sensor-actuator network coordination | |
Chouikhi et al. | Energy consumption scheduling as a fog computing service in smart grid | |
Yu et al. | Extended-cbba-based task allocation algorithm for on-orbit assembly spacecraft | |
Sun et al. | An auction and league championship algorithm based resource allocation mechanism for distributed cloud | |
Zheng et al. | An online mechanism for purchasing IaaS instances and scheduling pleasingly parallel jobs in cloud computing environments | |
Ananth et al. | Cooperative game theoretic approach for job scheduling in cloud computing | |
Ye et al. | Dynamic scheduling stochastic multiworkflows with deadline constraints in clouds | |
CN112416579B (zh) | 一种时间敏感的多方数据融合激励方法 | |
Wei et al. | Contract net based scheduling approach using interactive bidding for dynamic job shop scheduling | |
Wang et al. | Multi-robot task planning based on improved distributed auction algorithms | |
Liu et al. | A novel reinforcement-learning-based approach to scientific workflow scheduling | |
Veeramani et al. | Bid construction scheme for job flow time reduction in auction-based fully-distributed manufacturing systems | |
Xu et al. | Resource Management Scheduling-Based on Proximal Policy Optimization | |
Mingshun et al. | Resource scheduling of workflow multi-instance migration based on the shuffled leapfrog algorithm |
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 |