CN116070882B - 时序约束下基于边际成本的多机器人协同任务分配方法 - Google Patents

时序约束下基于边际成本的多机器人协同任务分配方法 Download PDF

Info

Publication number
CN116070882B
CN116070882B CN202310273602.3A CN202310273602A CN116070882B CN 116070882 B CN116070882 B CN 116070882B CN 202310273602 A CN202310273602 A CN 202310273602A CN 116070882 B CN116070882 B CN 116070882B
Authority
CN
China
Prior art keywords
target point
robot
access
allocated
target
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
Application number
CN202310273602.3A
Other languages
English (en)
Other versions
CN116070882A (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.)
Shenzhen University
Original Assignee
Shenzhen University
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 Shenzhen University filed Critical Shenzhen University
Priority to CN202310273602.3A priority Critical patent/CN116070882B/zh
Publication of CN116070882A publication Critical patent/CN116070882A/zh
Application granted granted Critical
Publication of CN116070882B publication Critical patent/CN116070882B/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • 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/06314Calendaring for a resource

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Mathematical Physics (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Tourism & Hospitality (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明公开了一种时序约束下基于边际成本的多机器人协同任务分配方法,属于机器人任务分配技术领域,包括:基于各目标点允许最早访问的时间,计算各机器人当前任务计划表中各个已分配目标点的规划访问时间;判断各机器人当前任务计划表中是否存在规划访问时间被更新的目标点,若是,更新各个已分配目标点在原始有向无环图中所有子目标点允许最早访问的时间;否则,将引起最小边际成本的待分配目标点分配给对应机器人,并将该目标点插入到对应机器人任务计划表中最小边际成本对应位置;在当前有向无环图中,删除刚分配的目标点及与其相连的有向边,并根据新的有向无环图迭代进行任务分配。本发明可以有效改善现有技术搜索效率低、耗时长的缺点。

Description

时序约束下基于边际成本的多机器人协同任务分配方法
技术领域
本发明涉及机器人任务分配技术领域,具体涉及一种时序约束下基于边际成本的多机器人协同任务分配方法。
背景技术
多机器人协同任务分配问题是机器人领域的关键问题之一。随着社会的高速发展及工业生产智能化程度的不断提高,需要机器人执行任务的形式日益多样化。在物流配送、灾害救援、军事打击等领域,一些任务由于其重要性或紧迫性,往往需要优先于其它任务被执行。在这种情况下,机器人不但需要连续访问多个目标点,还需要遵守目标点之间的时序约束。此类问题的关键研究内容是确定哪个机器人访问哪些目标点,使得在满足目标点时序约束的同时,最小化多个机器人访问所有目标点所消耗的总时间。
在现有技术中,可将任务分配方法分为精确算法和启发式算法。针对含时序约束的任务规划问题,经典的精确算法有分支定界法:其基本思想是对时序约束条件下优化问题的所有可行解空间进行搜索,当可行解空间过大时,搜索效率比较低,无法在多项式时间内最优求解NP-hard优化问题;经典的启发式算法有遗传算法:其原理简单、适用性广,能够在多项式时间内获得大规模优化问题的次优解,但是其无法应对机器人访问各个目标点所要遵循的时序约束,需要结合拓扑排序技术来解决时序约束下的单机器人多点访问任务规划问题,同时遗传算法局部搜索能力不足、耗时长。
发明内容
本发明的目的在于提供一种时序约束下基于边际成本的多机器人协同任务分配方法,以较小的计算量有效地提升了解的质量,改善了现有技术搜索效率低、耗时长的缺点。
本发明解决上述技术问题的技术方案如下:
本发明提供一种时序约束下基于边际成本的多机器人协同任务分配方法,所述时序约束下基于边际成本的多机器人协同任务分配方法包括:
S1:根据各机器人的初始位置和各待访问目标点的位置,得到各机器人与各待访问目标点之间的欧式距离矩阵;
S2:获取各机器人当前任务计划表中各目标点允许最早访问的时间戳;
S3:根据各机器人与各目标点之间的欧式距离以及各目标点允许最早访问的时间戳,计算各机器人当前任务计划表中各个已分配目标点的规划访问时间;
S4:判断各机器人当前任务计划表中是否存在规划访问时间被更新的目标点,若是,进入步骤S5;否则,进入步骤S6;
S5:更新已分配目标点集合中所有目标点在原始有向无环图中的各个子目标点允许最早访问的时间戳并返回步骤S3;
S6:获取当前有向无环图中入度为零的目标点集合;
S7:根据已分配目标点的规划访问时间,标记各待分配目标点在各机器人当前任务计划表中满足时序约束的所有可行插入位置;其中,所述待分配目标点属于当前有向无环图中入度为零的目标点集合;
S8:确定各待分配目标点在其可行插入位置中最小边际成本对应的插入位置;
S9:将所有待分配目标点和其在各机器人任务计划表中最小边际成本对应的插入位置进行最小边际成本匹配,以将引起最小边际成本的待分配目标点分配给对应机器人,并将所述引起最小边际成本的待分配目标点插入至该机器人当前任务计划表中最小边际成本所对应的插入位置,以更新该机器人当前的任务计划表;
S10:将刚分配的目标点添加至已分配目标点集合中,并在当前的有向无环图中删除刚分配的目标点及与其相连的有向边,形成新的有向无环图;
S11:判断新的有向无环图中目标点的个数是否为0,若是,结束当前任务分配;否则,返回步骤S2。
可选择地,所述步骤S3包括:
S31:根据各目标点允许最早访问的时间戳和各机器人与各目标点之间的欧式距离,计算各目标点的规划访问时间戳;
S32:根据各任务计划表中最后一个目标点的规划访问时间戳,得到各机器人访问当前任务计划表中所有已分配目标点需要的时间。
可选择地,所述步骤S31中,各目标点的规划访问时间戳包括当前任务计划表
Figure SMS_1
中第1个目标点的规划访问时间戳/>
Figure SMS_2
和第/>
Figure SMS_3
个目标点的规划访问时间戳/>
Figure SMS_4
所述当前任务计划表
Figure SMS_5
中第1个任务的规划访问时间戳/>
Figure SMS_6
为:
Figure SMS_7
其中,
Figure SMS_10
表示机器人当前任务计划表,/>
Figure SMS_15
表示/>
Figure SMS_19
中第一个目标点,/>
Figure SMS_11
为目标点/>
Figure SMS_13
允许最早访问的时间戳,/>
Figure SMS_17
表示机器人j初始位置与目标点
Figure SMS_21
之间的欧式距离,/>
Figure SMS_8
为机器人j的运动速度,当/>
Figure SMS_14
时,表示机器人j在目标点/>
Figure SMS_18
未被允许访问时就已经到达了该目标点,此时机器人j需等待至
Figure SMS_22
时刻才能访问目标点/>
Figure SMS_9
,等待时间计算为/>
Figure SMS_12
;若/>
Figure SMS_16
,则机器人到达目标点/>
Figure SMS_20
后立即访问,不需要等待;
所述当前任务计划表
Figure SMS_23
中第/>
Figure SMS_24
个目标点的规划访问时间戳/>
Figure SMS_25
为:
Figure SMS_26
其中,
Figure SMS_40
表示/>
Figure SMS_28
中第/>
Figure SMS_38
个目标点,/>
Figure SMS_39
为目标点/>
Figure SMS_43
允许最早访问的时间戳,/>
Figure SMS_42
表示目标点/>
Figure SMS_45
与目标点/>
Figure SMS_29
之间的欧式距离,/>
Figure SMS_33
为机器人j的运动速度,/>
Figure SMS_27
为目标点/>
Figure SMS_34
的规划访问时间戳,当/>
Figure SMS_30
时,表示机器人j在目标点/>
Figure SMS_37
未被允许访问时就已经到达了该目标点,此时机器人/>
Figure SMS_32
需等待至/>
Figure SMS_36
时刻才能访问目标点
Figure SMS_31
,等待时间计算为/>
Figure SMS_35
;若
Figure SMS_41
,则机器人到达目标点/>
Figure SMS_44
后立即访问,不需要等待。
可选择地,在所述步骤S5之前,所述方法还包括:
基于原始有向无环图,构建nn列的邻接矩阵A,其中,A中各元素为0或1,当第a行第b列的元素为1时表示存在从目标点a指向目标点b的有向边,否则表示不存在从目标点a指向目标点b的有向边,所述有向边表示机器人访问各目标点所要遵循的时序约束,即目标点a需要在目标点b之前被机器人访问,此时称目标点b为目标点a的子目标点。
可选择地,所述步骤S5中,所述已分配目标点集合中所有目标点在原始有向无环图中的各个子目标点允许最早访问的时间
Figure SMS_46
的更新规则为:
Figure SMS_47
,则令/>
Figure SMS_48
其中,
Figure SMS_49
表示目标点/>
Figure SMS_50
的规划访问时间,/>
Figure SMS_51
为已分配目标点集合中的目标点,/>
Figure SMS_52
为/>
Figure SMS_53
在原始有向无环图中的子目标点,/>
Figure SMS_54
表示各个子目标点允许最早访问的时间差且
Figure SMS_55
。/>
可选择地,所述步骤S7包括:
在当前任务计划表中的所有已分配目标点中,找到满足
Figure SMS_57
且使得
Figure SMS_59
最小的目标点/>
Figure SMS_61
,其中,目标点/>
Figure SMS_58
属于入度为零的目标点集合,/>
Figure SMS_60
表示目标点/>
Figure SMS_62
允许最早访问的时间,/>
Figure SMS_63
表示目标点/>
Figure SMS_56
的规划访问时间;
所述目标点
Figure SMS_64
所在位置/>
Figure SMS_65
的后一位(即/>
Figure SMS_66
)是可以插入/>
Figure SMS_67
的第一个位置,因此/>
Figure SMS_68
的可行插入位置/>
Figure SMS_69
取值范围为/>
Figure SMS_70
可选择地,所述步骤S8中,所述最小边际成本所对应的插入位置
Figure SMS_71
为:
Figure SMS_72
其中,
Figure SMS_75
表示机器人j当前的任务计划表,/>
Figure SMS_80
表示目标点/>
Figure SMS_84
在/>
Figure SMS_74
中的位置,/>
Figure SMS_79
表示待分配目标点/>
Figure SMS_83
在/>
Figure SMS_87
的可行插入位置,/>
Figure SMS_73
表示将待分配目标点/>
Figure SMS_77
插入/>
Figure SMS_81
的第/>
Figure SMS_85
个位置后的任务计划表,/>
Figure SMS_76
表示机器人j访问/>
Figure SMS_78
中所有已分配目标点需要的时间,/>
Figure SMS_82
表示机器人j访问/>
Figure SMS_86
中所有已分配目标点需要的时间。
可选择地,所述步骤S9包括:
Figure SMS_88
其中,
Figure SMS_90
表示引起最小边际成本的待分配目标点,/>
Figure SMS_93
表示目标点/>
Figure SMS_97
所分配给的机器人,/>
Figure SMS_92
表示待分配目标点,/>
Figure SMS_96
表示当前有向无环图中入度为零的目标点集合,/>
Figure SMS_99
表示将待分配目标点/>
Figure SMS_101
插入/>
Figure SMS_89
的第/>
Figure SMS_95
个位置后的任务计划表,/>
Figure SMS_98
表示机器人j访问
Figure SMS_100
中所有已分配目标点需要的时间,/>
Figure SMS_91
表示机器人j访问/>
Figure SMS_94
中所有已分配目标点需要的时间,J表示机器人集合。
本发明具有以下有益效果:
1、本发明结合拓扑排序技术的同时,用两个时间戳来分别表示每个目标点允许最早访问的时间和的规划访问时间,可以很好地应对多个机器人访问各个目标点所要遵循的时序约束,保证了解的可行性,规避了遗传算法局部搜索能力不足的缺点;
2、本发明迭代地将待访问目标点插入到任务计划表中,在改善解质量的同时,避免了庞大的计算,与遗传算法相比耗时更短。
附图说明
图1为本发明时序约束下基于边际成本的多机器人协同任务分配方法的流程图;
图2为本发明表示7个待访问目标点时序约束的有向无环图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
本发明提供一种时序约束下基于边际成本的多机器人协同任务分配方法,参考图1所示,所述时序约束下基于边际成本的多机器人协同任务分配方法包括:
S1:根据各机器人的初始位置和各待访问目标点的位置,得到各机器人与各待访问目标点之间的欧式距离矩阵;
基于m个机器人
Figure SMS_102
的初始位置以及n个待访问目标点
Figure SMS_103
的位置,求取包含各个机器人初始位置与各个待访问目标点位置之间的欧式距离矩阵D,其中/>
Figure SMS_104
表示目标点/>
Figure SMS_105
与/>
Figure SMS_106
之间的欧式距离。
S2:获取各机器人当前任务计划表中各目标点允许最早访问的时间戳;
S3:根据各机器人与各目标点之间的欧式距离以及各目标点允许最早访问的时间戳,计算各机器人当前任务计划表中各个已分配目标点的规划访问时间;
可选择地,所述步骤S3包括:
S31:根据各目标点允许最早访问的时间戳和各机器人与各目标点之间的欧式距离,计算各目标点的规划访问时间戳;
初始时,各个目标点
Figure SMS_107
允许最早访问的时间戳/>
Figure SMS_108
初始值为0,规划访问时间戳
Figure SMS_109
也为0。
除此之外,各目标点的规划访问时间戳包括当前任务计划表
Figure SMS_110
中第1个任务的规划访问时间戳/>
Figure SMS_111
和第/>
Figure SMS_112
个任务的规划访问时间戳/>
Figure SMS_113
所述当前任务计划表
Figure SMS_114
中第1个任务的规划访问时间戳/>
Figure SMS_115
为:
Figure SMS_116
其中,
Figure SMS_117
表示机器人当前任务计划表,/>
Figure SMS_121
表示/>
Figure SMS_125
中第一个目标点,/>
Figure SMS_119
为目标点/>
Figure SMS_122
允许最早访问的时间戳,/>
Figure SMS_126
表示机器人j初始位置与目标点
Figure SMS_129
之间的欧式距离,/>
Figure SMS_120
为机器人j的运动速度,当/>
Figure SMS_124
时,表示机器人j在目标点/>
Figure SMS_128
未被允许访问时就已经到达了该目标点,此时机器人j需等待至
Figure SMS_131
时刻才能访问目标点/>
Figure SMS_118
,等待时间计算为/>
Figure SMS_123
;若
Figure SMS_127
,则机器人到达目标点/>
Figure SMS_130
后立即访问,不需要等待;
所述当前任务计划表
Figure SMS_132
中第/>
Figure SMS_133
个目标点的规划访问时间戳/>
Figure SMS_134
为:
Figure SMS_135
其中,
Figure SMS_148
表示/>
Figure SMS_138
中第/>
Figure SMS_142
个目标点,/>
Figure SMS_140
为目标点/>
Figure SMS_143
允许最早访问的时间戳,/>
Figure SMS_149
表示目标点/>
Figure SMS_152
与目标点/>
Figure SMS_150
之间的欧式距离,/>
Figure SMS_153
为机器人j的运动速度,/>
Figure SMS_136
为目标点/>
Figure SMS_145
的规划访问时间戳,当/>
Figure SMS_139
时,表示机器人j在目标点/>
Figure SMS_144
未被允许访问时就已经到达了该目标点,此时机器人/>
Figure SMS_141
需等待至/>
Figure SMS_146
时刻才能访问目标点
Figure SMS_137
,等待时间计算为/>
Figure SMS_147
;若
Figure SMS_151
,则机器人到达目标点/>
Figure SMS_154
后立即访问,不需要等待。
S32:根据各任务计划表中最后一个目标点的规划访问时间戳,得到各机器人访问当前任务计划表中所有已分配目标点需要的时间。
针对各个机器人j当前任务计划表
Figure SMS_155
,按照从前往后的顺序依次计算各个目标点的规划访问时间戳,直至计算出最后一个目标点/>
Figure SMS_156
的规划访问时间/>
Figure SMS_157
,此时
Figure SMS_158
S4:判断各机器人当前任务计划表中是否存在规划访问时间被更新的目标点,若是,进入步骤S5;否则,进入步骤S6;
S5:更新已分配目标点集合中所有目标点在原始有向无环图中的各个子目标点允许最早访问的时间戳并返回步骤S3;
所述已分配目标点集合中所有目标点在原始有向无环图中的各个子目标点允许最早访问的时间
Figure SMS_159
的更新规则为:
Figure SMS_160
,则令/>
Figure SMS_161
其中,
Figure SMS_162
表示目标点/>
Figure SMS_163
的规划访问时间,/>
Figure SMS_164
为已分配目标点集合中的目标点,/>
Figure SMS_165
为/>
Figure SMS_166
在原始有向无环图中的子目标点,/>
Figure SMS_167
表示各个子目标点允许最早访问的时间差且
Figure SMS_168
在此之前,所述方法还包括:
基于原始有向无环图,构建nn列的邻接矩阵A,其中,A中各元素为0或1,当第a行第b列的元素为1时表示存在从目标点a指向目标点b的有向边,否则表示不存在从目标点a指向目标点b的有向边,所述有向边表示机器人访问各目标点所要遵循的时序约束,即目标点a需要在目标点b之前被机器人访问,此时称目标点b为目标点a的子目标点。
例如,
Figure SMS_171
为1表示存在一条从/>
Figure SMS_173
指向/>
Figure SMS_176
的有向边,表示目标点/>
Figure SMS_170
需要在目标点/>
Figure SMS_172
之前被机器人访问,此时称目标点/>
Figure SMS_175
为目标点/>
Figure SMS_178
的子目标点。/>
Figure SMS_169
为0则表示不存在从/>
Figure SMS_174
指向/>
Figure SMS_177
的有向边。
具体地,参考图2所示,满足
Figure SMS_179
,则表示存在一条从/>
Figure SMS_180
指向/>
Figure SMS_181
的有向边,说明/>
Figure SMS_182
是/>
Figure SMS_183
在有向无环图中的子目标点,在基于图2构建的7行7列的邻接矩阵中,值为1的元素是:
Figure SMS_184
剩下其他元素的值都是0。因此目标点
Figure SMS_185
的子目标点是/>
Figure SMS_186
和/>
Figure SMS_187
;目标点/>
Figure SMS_188
的子目标点是/>
Figure SMS_189
;其余同理。
S6:获取当前有向无环图中入度为零的目标点集合;
当迭代地对各个任务进行分配时,在当前时序约束图中找出入度为零的各个待分配目标点的具体方法为:针对图中的每个目标点i,依次检查
Figure SMS_190
的值是否都为0,如果是,则表示目标点/>
Figure SMS_191
的入度为零,将其添加到入度为零的待分配目标点集合I 0中,即/>
Figure SMS_192
S7:根据已分配目标点的规划访问时间,标记各待分配目标点在各机器人当前任务计划表中满足时序约束的所有可行插入位置;其中,所述待分配目标点属于当前有向无环图中入度为零的目标点集合;
可选择地,所述步骤S7包括:
在当前任务计划表中的所有已分配目标点中,找到满足
Figure SMS_195
且使得
Figure SMS_197
最小的目标点/>
Figure SMS_199
,其中,目标点/>
Figure SMS_194
属于入度为零的目标点集合,/>
Figure SMS_196
表示目标点/>
Figure SMS_198
允许最早访问的时间,/>
Figure SMS_200
表示目标点/>
Figure SMS_193
的规划访问时间;
所述目标点
Figure SMS_201
所在位置/>
Figure SMS_202
的后一位(即/>
Figure SMS_203
)是可以插入/>
Figure SMS_204
的第一个位置,因此/>
Figure SMS_205
的可行插入位置/>
Figure SMS_206
取值范围为/>
Figure SMS_207
S8:确定各待分配目标点在其可行插入位置中最小边际成本对应的插入位置;
所述最小边际成本所对应的插入位置
Figure SMS_208
为:
Figure SMS_209
其中,
Figure SMS_211
表示机器人j当前的任务计划表,/>
Figure SMS_215
表示目标点/>
Figure SMS_219
在/>
Figure SMS_213
中的位置,/>
Figure SMS_214
表示待分配目标点/>
Figure SMS_218
在/>
Figure SMS_220
的可行插入位置,/>
Figure SMS_210
表示将待分配目标点/>
Figure SMS_217
插入/>
Figure SMS_222
的第/>
Figure SMS_224
个位置后的任务计划表,/>
Figure SMS_212
表示机器人j访问/>
Figure SMS_216
中所有已分配目标点需要的时间,/>
Figure SMS_221
表示机器人j访问/>
Figure SMS_223
中所有已分配目标点需要的时间。
S9:将所有待分配目标点和其在各机器人任务计划表中最小边际成本对应的插入位置进行最小边际成本匹配,以将引起最小边际成本的待分配目标点分配给对应机器人,并将所述引起最小边际成本的待分配目标点插入至该机器人当前任务计划表中最小边际成本所对应的插入位置,以更新该机器人当前的任务计划表;
即:
Figure SMS_225
其中,
Figure SMS_228
表示引起最小边际成本的待分配目标点,/>
Figure SMS_233
表示目标点/>
Figure SMS_236
所分配给的机器人,/>
Figure SMS_229
表示待分配目标点,/>
Figure SMS_231
表示当前有向无环图中入度为零的目标点集合,/>
Figure SMS_235
表示将待分配目标点/>
Figure SMS_238
插入/>
Figure SMS_226
的第/>
Figure SMS_232
个位置后的任务计划表,/>
Figure SMS_234
表示机器人j访问
Figure SMS_237
中所有已分配目标点需要的时间,/>
Figure SMS_227
表示机器人j访问/>
Figure SMS_230
中所有已分配目标点需要的时间,J表示机器人集合。
S10:将刚分配的目标点添加至已分配目标点集合中,并在当前的有向无环图中删除刚分配的目标点及与其相连的有向边,形成新的有向无环图;
S11:判断新的有向无环图中目标点的个数是否为0,若是,结束当前任务分配;否则,返回步骤S2。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种时序约束下基于边际成本的多机器人协同任务分配方法,其特征在于,所述时序约束下基于边际成本的多机器人协同任务分配方法包括:
S1:根据各机器人的初始位置和各待访问目标点的位置,得到各机器人与各待访问目标点之间的欧式距离矩阵;
S2:获取各机器人当前任务计划表中各目标点允许最早访问的时间戳;
S3:根据各机器人与各目标点之间的欧式距离以及各目标点允许最早访问的时间戳,计算各机器人当前任务计划表中各个已分配目标点的规划访问时间;
S4:判断各机器人当前任务计划表中是否存在规划访问时间被更新的目标点,若是,进入步骤S5;否则,进入步骤S6;
S5:更新已分配目标点集合中所有目标点在原始有向无环图中的各个子目标点允许最早访问的时间戳并返回步骤S3;
S6:获取当前有向无环图中入度为零的目标点集合;
S7:根据已分配目标点的规划访问时间,标记各待分配目标点在各机器人当前任务计划表中满足时序约束的所有可行插入位置;其中,所述待分配目标点属于当前有向无环图中入度为零的目标点集合;
S8:确定各待分配目标点在其可行插入位置中最小边际成本对应的插入位置;
S9:将所有待分配目标点和其在各机器人任务计划表中最小边际成本对应的插入位置进行最小边际成本匹配,以将引起最小边际成本的待分配目标点分配给对应机器人,并将所述引起最小边际成本的待分配目标点插入至该机器人当前任务计划表中最小边际成本所对应的插入位置,以更新该机器人当前的任务计划表;
S10:将刚分配的目标点添加至已分配目标点集合中,并在当前的有向无环图中删除刚分配的目标点及与其相连的有向边,形成新的有向无环图;
S11:判断新的有向无环图中目标点的个数是否为0,若是,结束当前任务分配;否则,返回步骤S2;
所述步骤S8中,所述最小边际成本所对应的插入位置
Figure QLYQS_1
为:
Figure QLYQS_2
其中,
Figure QLYQS_4
表示机器人j当前的任务计划表,/>
Figure QLYQS_9
表示目标点/>
Figure QLYQS_13
在/>
Figure QLYQS_6
中的位置,/>
Figure QLYQS_7
表示待分配目标点/>
Figure QLYQS_11
在/>
Figure QLYQS_16
的可行插入位置,/>
Figure QLYQS_3
表示将待分配目标点/>
Figure QLYQS_10
插入/>
Figure QLYQS_14
的第/>
Figure QLYQS_17
个位置后的任务计划表,/>
Figure QLYQS_5
表示机器人j访问/>
Figure QLYQS_8
中所有已分配目标点需要的时间,
Figure QLYQS_12
表示机器人j访问/>
Figure QLYQS_15
中所有已分配目标点需要的时间。
2.根据权利要求1所述的时序约束下基于边际成本的多机器人协同任务分配方法,其特征在于,所述步骤S3包括:
S31:根据各目标点允许最早访问的时间戳和各机器人与各目标点之间的欧式距离,计算各目标点的规划访问时间戳;
S32:根据各任务计划表中最后一个目标点的规划访问时间戳,得到各机器人访问当前任务计划表中所有已分配目标点需要的时间。
3.根据权利要求2所述的时序约束下基于边际成本的多机器人协同任务分配方法,其特征在于,所述步骤S31中,各目标点的规划访问时间戳包括当前任务计划表
Figure QLYQS_18
中第1个目标点的规划访问时间戳/>
Figure QLYQS_19
和第/>
Figure QLYQS_20
个目标点的规划访问时间戳
Figure QLYQS_21
所述当前任务计划表
Figure QLYQS_22
中第1个目标点的规划访问时间戳/>
Figure QLYQS_23
为:
Figure QLYQS_24
其中,
Figure QLYQS_26
表示机器人当前任务计划表,/>
Figure QLYQS_29
表示/>
Figure QLYQS_32
中第一个目标点,/>
Figure QLYQS_27
为目标点/>
Figure QLYQS_30
允许最早访问的时间戳,/>
Figure QLYQS_33
表示机器人j初始位置与目标点/>
Figure QLYQS_35
之间的欧式距离,/>
Figure QLYQS_25
为机器人j的运动速度,当/>
Figure QLYQS_31
时,表示机器人j在目标点/>
Figure QLYQS_36
未被允许访问时就已经到达了该目标点,此时机器人j需等待至/>
Figure QLYQS_38
时刻才能访问目标点/>
Figure QLYQS_28
,等待时间计算为/>
Figure QLYQS_34
;若/>
Figure QLYQS_37
,则机器人到达目标点/>
Figure QLYQS_39
后立即访问,不需要等待;
所述当前任务计划表
Figure QLYQS_40
中第/>
Figure QLYQS_41
个目标点的规划访问时间戳/>
Figure QLYQS_42
为:
Figure QLYQS_43
其中,
Figure QLYQS_52
表示/>
Figure QLYQS_45
中第/>
Figure QLYQS_49
个目标点,/>
Figure QLYQS_47
为目标点/>
Figure QLYQS_50
允许最早访问的时间戳,/>
Figure QLYQS_54
表示目标点/>
Figure QLYQS_56
与目标点/>
Figure QLYQS_57
之间的欧式距离,/>
Figure QLYQS_61
为机器人j的运动速度,/>
Figure QLYQS_44
为目标点/>
Figure QLYQS_51
的规划访问时间戳,当/>
Figure QLYQS_55
时,表示机器人j在目标点/>
Figure QLYQS_59
未被允许访问时就已经到达了该目标点,此时机器人/>
Figure QLYQS_60
需等待至/>
Figure QLYQS_62
时刻才能访问目标点
Figure QLYQS_46
,等待时间计算为/>
Figure QLYQS_48
;若
Figure QLYQS_53
,则机器人到达目标点/>
Figure QLYQS_58
后立即访问,不需要等待。
4.根据权利要求1所述的时序约束下基于边际成本的多机器人协同任务分配方法,其特征在于,在所述步骤S5之前,所述方法还包括:
基于原始有向无环图,构建nn列的邻接矩阵A,其中,A中各元素为0或1,当第a行第b列的元素为1时表示存在从目标点a指向目标点b的有向边,否则表示不存在从目标点a指向目标点b的有向边,所述有向边表示机器人访问各目标点所要遵循的时序约束,即目标点a需要在目标点b之前被机器人访问,此时称目标点b为目标点a的子目标点。
5. 根据权利要求1所述的时序约束下基于边际成本的多机器人协同任务分配方法,其特征在于,所述步骤S5中,所述已分配目标点集合中所有目标点在原始有向无环图中的各个子目标点允许最早访问的时间
Figure QLYQS_63
的更新规则为:
Figure QLYQS_64
,则令/>
Figure QLYQS_65
其中,
Figure QLYQS_66
表示目标点/>
Figure QLYQS_67
的规划访问时间,/>
Figure QLYQS_68
为已分配目标点集合中的目标点,/>
Figure QLYQS_69
为/>
Figure QLYQS_70
在原始有向无环图中的子目标点,/>
Figure QLYQS_71
表示各个子目标点允许最早访问的时间差且/>
Figure QLYQS_72
6.根据权利要求1所述的时序约束下基于边际成本的多机器人协同任务分配方法,其特征在于,所述步骤S7包括:
在当前任务计划表中的所有已分配目标点中,找到满足
Figure QLYQS_74
且使得
Figure QLYQS_77
最小的目标点/>
Figure QLYQS_78
,其中,目标点/>
Figure QLYQS_75
属于入度为零的目标点集合,/>
Figure QLYQS_76
表示目标点/>
Figure QLYQS_79
允许最早访问的时间,/>
Figure QLYQS_80
表示目标点/>
Figure QLYQS_73
的规划访问时间;
所述目标点
Figure QLYQS_81
所在位置/>
Figure QLYQS_82
的后一位/>
Figure QLYQS_83
是可以插入/>
Figure QLYQS_84
的第一个位置,因此/>
Figure QLYQS_85
的可行插入位置/>
Figure QLYQS_86
取值范围为/>
Figure QLYQS_87
7.根据权利要求1-6中任意一项所述的时序约束下基于边际成本的多机器人协同任务分配方法,其特征在于,所述步骤S9包括:
Figure QLYQS_88
其中,
Figure QLYQS_92
表示引起最小边际成本的待分配目标点,/>
Figure QLYQS_93
表示目标点/>
Figure QLYQS_97
所分配给的机器人,
Figure QLYQS_90
表示待分配目标点,/>
Figure QLYQS_94
表示当前有向无环图中入度为零的目标点集合,/>
Figure QLYQS_98
表示将待分配目标点/>
Figure QLYQS_101
插入/>
Figure QLYQS_89
的第/>
Figure QLYQS_96
个位置后的任务计划表,/>
Figure QLYQS_99
表示机器人j访问/>
Figure QLYQS_100
中所有已分配目标点需要的时间,/>
Figure QLYQS_91
表示机器人j访问/>
Figure QLYQS_95
中所有已分配目标点需要的时间,J表示机器人集合。/>
CN202310273602.3A 2023-03-21 2023-03-21 时序约束下基于边际成本的多机器人协同任务分配方法 Active CN116070882B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310273602.3A CN116070882B (zh) 2023-03-21 2023-03-21 时序约束下基于边际成本的多机器人协同任务分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310273602.3A CN116070882B (zh) 2023-03-21 2023-03-21 时序约束下基于边际成本的多机器人协同任务分配方法

Publications (2)

Publication Number Publication Date
CN116070882A CN116070882A (zh) 2023-05-05
CN116070882B true CN116070882B (zh) 2023-06-02

Family

ID=86175196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310273602.3A Active CN116070882B (zh) 2023-03-21 2023-03-21 时序约束下基于边际成本的多机器人协同任务分配方法

Country Status (1)

Country Link
CN (1) CN116070882B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113671985A (zh) * 2021-07-28 2021-11-19 中国人民解放军32146部队 一种分阶段多基地无人机任务分配和航迹规划方法
CN114740883A (zh) * 2022-03-09 2022-07-12 中国空气动力研究与发展中心计算空气动力研究所 一种协同点侦察任务规划跨层联合优化方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108527367B (zh) * 2018-03-28 2021-11-19 华南理工大学 一种多机器人协同作业任务的描述方法
CN113408949B (zh) * 2021-07-15 2022-05-31 浙江大学 一种机器人时序任务规划方法及装置、电子设备
CN114091890A (zh) * 2021-11-18 2022-02-25 南京航空航天大学 一种面向多机器人避碰耦合规划问题的大部件协同加工规划方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113671985A (zh) * 2021-07-28 2021-11-19 中国人民解放军32146部队 一种分阶段多基地无人机任务分配和航迹规划方法
CN114740883A (zh) * 2022-03-09 2022-07-12 中国空气动力研究与发展中心计算空气动力研究所 一种协同点侦察任务规划跨层联合优化方法

Also Published As

Publication number Publication date
CN116070882A (zh) 2023-05-05

Similar Documents

Publication Publication Date Title
CN109034468B (zh) 一种基于布谷鸟算法的带时间窗的物流配送路径规划方法
Liu et al. Deep reinforcement learning for dynamic scheduling of a flexible job shop
CN110134146B (zh) 一种不确定环境下的分布式多无人机任务分配方法
CN110046865B (zh) 分布式库存调度方法
Iwata et al. AntMap: constructing genetic linkage maps using an ant colony optimization algorithm
CN107895225B (zh) 一种多Agent无冲突的合作型任务分配方法
CN109685243B (zh) 一种基于遗传算法的作业车间物流配送路径优化方法
CN110705742A (zh) 一种基于改进蚁群算法的物流配送方法
CN110413611A (zh) 数据存储、查询方法及装置
CN111008521B (zh) 生成宽表的方法、装置及计算机存储介质
Xi et al. A new method for solving buffer allocation problem in large unbalanced production lines
US20100005273A1 (en) Method for selecting node in network system and system thereof
CN106611275A (zh) 针对作业车间生产问题的排产算法
CN113064392B (zh) 基于矩阵车间agv调度的离散型优化方法
CN110928261B (zh) 分布式异构流水车间的分布估计调度方法及系统
CN116070882B (zh) 时序约束下基于边际成本的多机器人协同任务分配方法
CN104573880B (zh) 一种用于物流配送领域的路径优化方法
CN107291746A (zh) 一种存储和读取数据的方法及设备
CN109377111B (zh) 基于改进模拟退火算法的作业调度方法和装置
CN110837950A (zh) 一种rgv的动态调度方法
CN115456268A (zh) 一种导向辊制造资源优化配置方法、装置、设备及介质
CN115438451A (zh) 一种光伏组件串线排布确定方法、装置及电子设备
CN114610058A (zh) 一种集群飞行器多任务分布式任务分配方法
CN107249029B (zh) 主动领取任务的方法、工作节点、系统及存储介质
CN109635032A (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
GR01 Patent grant
GR01 Patent grant