一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

多机器人避障方法、装置、电子设备及存储介质与流程

2022-05-08 09:14:11 来源:中国专利 TAG:


1.本技术涉及机器人避障技术领域,具体而言,涉及一种多机器人避障方法、装置、电子设备及存储介质。


背景技术:

2.机器人自主避障作为全自动机器人的基础核心功能,尤其是随着近年全自动仓储物流的建设,大量搬运机器人的投入,对空间范围内的多机器人避障的实时性与高效性要求越来越高。
3.目前机器人避障的有效手段主要是通过多传感器融合的方式实现自主避障,然而,激光雷达、深度相机等昂贵的传感器导致机器人成本居高不下,同时也对机器人数据处理能力要求越来越高。
4.基于上述问题,目前尚未有有效的解决方法。


技术实现要素:

5.本技术的目的在于提供一种多机器人避障方法、装置、电子设备及存储介质,具有计算量小,易仿真等优势,能够减少设置机器人的传感器数量,大大减少机器人成本。
6.第一方面,本技术提供了一种多机器人避障方法,用于对多个机器人进行控制,其中,包括以下步骤:s1.获取全局栅格地图和各所述机器人的全局路径;s2.根据所述全局栅格地图生成元胞空间;所述元胞空间包括多个元胞,每个所述元胞由所述全局栅格地图的至少一个栅格组成;s3.根据所述元胞空间生成元胞状态集合;所述元胞状态集合包含各所述元胞的元胞状态信息,所述元胞状态信息用于表示对应的所述元胞的占用情况;s4.在所述机器人按照对应的所述全局路径运动时,根据各所述机器人的位置更新所述元胞状态集合;s5.根据所述机器人的感知范围内的所述元胞的占用情况对相应的所述全局路径进行局部调整。
7.本技术提供的多机器人避障方法,采用全局规划和基于元胞动态模型局部避障的方式进行导航,针对多智能体的微观运动行为能够较好地反映,本方法通过结合机器人的运动特点,将移动机器人作为独立智能体,利用元胞演化规则进行自主避障,具有较好的适应性和智能性。
8.可选地,每个所述元胞由所述全局栅格地图的一个栅格组成。
9.可选地,所述元胞状态信息为表示元胞被占用的动态占用状态信息、表示元胞被占用的静态占用状态信息或表示元胞未被占用的空闲状态信息;步骤s4包括:初始化各所述元胞状态信息。
10.可选地,步骤s5包括:
s501.以每个所述机器人为原点,生成一个感知范围;s502.获取落入所述感知范围内的元胞的元胞状态信息;s503.根据所述元胞状态信息和预设的元胞演化规则实时调整相应的机器人的全局路径。
11.在实际应用中,以每个机器人作为独立的智能体,生成一个感知范围,在进行元胞状态更新时,仅考虑感知范围内的元胞,大大减少其他元胞状态更新的数量,减少了计算量,提高计算效率。
12.可选地,步骤s503包括:s5031.根据所述元胞演化规则选择航向角;s5032.根据所述航向角调整机器人的移动方向。
13.可选地,所述元胞演化规则为:从可选邻域元胞范围内,选择合适元胞,使航向角选择效用值、距离选择效用值和邻域方向选择效用值的乘积最大化;其中,所述航向角选择效用值为:;所述距离选择效用值为:;所述邻域方向选择效用值为:;所述可选邻域方向角为:;其中,表示正弦函数;表示以自然常数e为底的指数函数;表示所述航向角选择效用值;表示所述距离选择效用值;表示所述邻域方向选择效用值;表示所述可选邻域方向角;w表示机器人开始避障时的当前运行航向角;表示机器人移动至邻域元胞时,机器人与落入感知范围内的所述全局路径段i之间形成的运行航向角; m表示曼哈顿距离函数;表示机器人的第j个可选邻域元胞;l表示在机器人感知范围内的全局路径;q表示落入感知范围的元胞个数;n表示邻域元胞总数。
14.通过这种方式,可以通过计算航向角选择效用值,防止机器人在避障时发生轨迹突变;并且通过计算机器人邻域方向选择效用值和距离选择效用值,从而避免机器人在避障的过程偏移预设的全局路径太多,实现经过局部避障之后重新回到预设的全局路径上。
15.第二方面,本技术提供一种多机器人避障装置,用于对多个机器人进行控制,其中,所述装置包括:第一获取模块:用于获取全局栅格地图和各所述机器人的全局路径;第一生成模块:用于根据所述全局栅格地图生成元胞空间;所述元胞空间包括多个元胞,每个所述元胞由所述全局栅格地图的至少一个栅格组成;第二生成模块:用于根据所述元胞空间生成元胞状态集合;所述元胞状态集合包含各所述元胞的元胞状态信息,所述元胞状态信息用于表示对应的所述元胞的占用情况;
更新模块:用于在所述机器人按照对应的所述全局路径运动时,根据各所述机器人的位置更新所述元胞状态集合;调整模块:用于根据所述机器人的感知范围内的所述元胞的占用情况对相应的所述全局路径进行局部调整。
16.本技术提供的多机器人避障装置,采用全局规划和基于元胞动态模型方式进行导航,针对多智能体的微观运动行为能够较好地反映,本装置通过结合机器人的运动特点,将移动机器人作为独立智能体,利用元胞演化规则进行自主避障,具有较好的适应性和智能性。
17.可选地,每个所述元胞由所述全局栅格地图的一个栅格组成。
18.第三方面,本技术提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。
19.第四方面,本技术提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。
20.由上可知,本技术提供的多机器人避障方法、装置、电子设备及存储介质,通过获取全局栅格地图和各机器人的全局路径;根据全局栅格地图生成元胞空间;元胞空间包括多个元胞,每个元胞由全局栅格地图的至少一个栅格组成;根据元胞空间生成元胞状态集合;元胞状态集合包含各元胞的元胞状态信息,元胞状态信息用于表示对应的元胞的占用情况;在机器人按照对应的全局路径运动时,根据各机器人的位置更新元胞状态集合;根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整。通过将移动机器人作为独立智能体进行微观仿真,在多机器人环境下利用元胞演化规则进行自主避障,具有较好的适应性和智能性。同时,能够减少设置机器人的传感器数量,具有计算量小,易仿真等优势,能够大大减少计算成本。
21.本技术的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
22.图1为本技术提供的多机器人避障方法的一种流程图。
23.图2为本技术提供的多机器人避障装置的一种结构示意图。
24.图3为本技术提供的电子设备的结构示意图。
25.图4为本技术提供的机器人避障示意简图。
26.标号说明:10、选中的邻域元胞;101、第一感知范围;102、第一全局路径;103、第一机器人;2、机器人与落入感知范围内的全局路径段之间形成的运行航向角;40、处于静态占用信息或者动态占用信息的元胞;201、第一获取模块;202、第一生成模块;203、第二生成模块;204、更新模块;205、调整模块;301、处理器;302、存储器;303、通信总线。
具体实施方式
27.下面将结合本技术实施方式中附图,对本技术实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本技术一部分实施方式,而不是全部的实施方式。通常在此处附图中描述和示出的本技术实施方式的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施方式的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施方式。基于本技术的实施方式,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施方式,都属于本技术保护的范围。
28.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
29.在实际应用中,商场或者货仓内设置有多个移动机器人,移动机器人执行搬运货物的操作。移动机器人上设置有wifi无线模块和现有的定位模组,可以和调度中心进行通讯连接,向调度中心发送实时位置信息和共享商场货仓的全景地图,以及其他移动机器人的位置信息。全景地图可以是由现有的激光雷达设备进行构建,激光雷达设备的设置位置可以是在移动机器人上,也可以是固定设置在商场以及货仓中的某个位置。
30.请参照图1,图1是本技术一些实施方式中的多机器人避障方法的流程图,用于对多个机器人进行控制,其中,包括以下步骤:s1.获取全局栅格地图和各机器人的全局路径;s2.根据全局栅格地图生成元胞空间;元胞空间包括多个元胞,每个元胞由全局栅格地图的至少一个栅格组成;s3.根据元胞空间生成元胞状态集合;元胞状态集合包含各元胞的元胞状态信息,元胞状态信息用于表示对应的元胞的占用情况;s4.在机器人按照对应的全局路径运动时,根据各机器人的位置更新元胞状态集合;s5.根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整。
31.在一些实施例中,步骤s1的全局栅格地图可以是基于现有的激光雷达设备生成,是一种存储有静态环境信息的地图,全局栅格地图的分辨率决定了每一个像素距离代表的实际长度,全局栅格地图中包含多个呈矩阵分布的栅格,每个栅格包括若干个像素点。全局路径可以通过现有的全局规划算法生成,如a*算法、rrt算法等。
32.在一些实施例中,步骤s2的元胞空间是由元胞组成的网格空间,每个元胞即网格空间中的一个网格,网格的形状和尺寸统一,在实际应用中,也可根据实际情况采用全局栅格地图的一个或多个栅格组成一个元胞,在此不做具体限定。
33.在一些实施例中,步骤s3的元胞状态信息只能从元胞状态集合里选出,例如元胞状态集合里有0和1两种元素,0代表占用状态,1代表空闲状态,元胞状态信息只能从0和1两种元素中任选一种代表当前的元胞状态信息。但元胞状态集合里的元素不限于此,例如可以是其它数字、两个不同的字母或其它符号等,只需要保证两种元素不相同即可,该两种元素分别代表占用状态和空闲状态。
34.在一些实施例中,步骤s4中根据各机器人的位置更新元胞状态集合时,当某个机器人处于某元胞内,那么该元胞的元胞状态就是占用状态,把对应元胞的元胞状态信息更新为表示元胞被占用的状态信息,当机器人离开该元胞时,那么该元胞的元胞状态信息就会从占用状态变更为空闲状态,把对应元胞的元胞状态信息更新为表示元胞未被占用的状态信息。
35.在一些实施例中,步骤s5的机器人的感知范围是指以机器人为原点的一个预设尺寸的感知范围(该感知范围一般为矩形区域范围,但不限于此),另外,常见的元胞邻域形式有von neumann型邻域(即机器人的邻域元胞包括机器人所在元胞相邻的上、下、左、右四个元胞)和moore型邻域(即机器人的邻域元胞包括机器人所在元胞相邻的上、下、左、右、左上、右上、左下、右下八个元胞),本方法考虑到移动机器人的运动特性,选择moore型邻域,也就是以机器人为原点的矩形区域范围,移动机器人可移动方向包括上、下、左、右及对角线8个方向。局部调整可以是指机器人可以根据上述方向绕过处于占用状态的元胞,然后重新进入预设的全局路径中(即步骤s1获取的全局路径)。
36.通过本技术的多机器人避障方法,采用全局规划和基于元胞动态模型局部避障的方式进行导航,针对多智能体的微观运动行为能够较好地反映,本方法通过结合机器人的运动特点,将移动机器人作为独立智能体,利用元胞演化规则进行自主避障,具有较好的适应性和智能性。
37.在进一步的实施方式中,每个元胞由全局栅格地图的一个栅格组成。
38.在实际应用中,为了与全局栅格地图相适配,进一步方便计算,本技术采用二维方形网格构建元胞空间;以栅格地图大小2m*2m,分辨率0.05m/px为例,全局静态栅格地图被划分为40*40个栅格,由此构建40*40的元胞空间。
39.在一些实施方式中,元胞状态信息为表示元胞被占用的动态占用状态信息、表示元胞被占用的静态占用状态信息或表示元胞未被占用的空闲状态信息;在一些实施方式中,步骤s4包括:初始化各元胞状态信息。
40.其中,初始化每个元胞的元胞状态信息,将有静态障碍物体侵占的元胞对应的元胞转态信息更新为静态占用状态信息,机器人侵占的元胞对应的元胞状态信息更新为动态占用状态,其余的元胞状态信息则为空闲状态。
41.具体的,由于在商场或者货仓的某个位置会存在一些货柜或者架子等不可移动的物体,机器人无法经过该位置,因此,可以在一开始的全局栅格地图上,提前将存在不可移动物体的位置所对应的元胞进行初始化,将该元胞的元胞状态信息初始化为静态占用状态信息(例如将该元胞状态信息初始化为0,0代表该元胞处于静态占用状态信息),并且在后续的使用中都以该全局栅格地图为基础进行全局路径规划。通过这种初始化的方式,可以提前获知被占用元胞的位置,并且把这些元胞标定为不变元胞,从而在后续进行元胞状态信息更新时不对这些处于静态占用状态信息的元胞进行更新操作,从而降低后续进行更新时的计算量。
42.在一些实施方式中,机器人在根据规划好的全局路径行走的过程中,需要获取全局栅格地图上其他机器人的实时位置信息,从而更新所有元胞的元胞状态信息(对于被标定为固定元胞的元胞,可以不更新其元胞状态信息)。其中,整个全局栅格地图的元胞的元胞状态信息每隔预设周期就会全局更新一次。
43.在一些优选的实施例中,步骤s5包括:s501.以每个机器人为原点,生成一个感知范围;s502.获取落入感知范围内的元胞的元胞状态信息;s503.根据元胞状态信息和预设的元胞演化规则实时调整相应机器人的全局路径。
44.通过这种方式,以每个机器人作为独立的智能体,生成一个感知范围,在后续进行元胞状态更新时,可以仅考虑感知范围内的元胞,大大减少其他元胞状态更新的数量,减少了计算量,提高计算效率。
45.其中,步骤s503包括:s5031.根据元胞演化规则选择航向角;s5032.根据航向角调整机器人的移动方向。
46.在一些实施例中,元胞演化规则为:从可选邻域元胞内选择合适元胞,使航向角选择效用值、距离选择效用值和邻域方向选择效用值的乘积最大化;其中,航向角选择效用值为:;距离选择效用值为:;邻域方向选择效用值为:;可选邻域方向角为:;其中,表示正弦函数;表示以自然常数e为底的指数函数;表示航向角选择效用值;表示距离选择效用值;表示邻域方向选择效用值;表示可选邻域方向角;w表示机器人开始避障时的当前运行航向角;表示机器人移动至邻域元胞时,机器人与落入感知范围内的全局路径段i之间形成的运行航向角; m表示曼哈顿距离函数;表示机器人的第j个可选邻域元胞;l表示在机器人感知范围内的全局路径;q表示落入感知范围的元胞个数;n表示邻域元胞总数。
47.参阅图4,可以更加直观的了解上述l和代表的含义,其中,图中每个栅格代表一个元胞,第一机器人103原本是按照第一全局路径102行走,但是在移动过程中通过第一感知范围101感知到处于静态占用信息或者动态占用信息的元胞40占用了第一全局路径102,此时第一机器人103需要调整路径,假设第一机器人103移动到选中的邻域元胞10(即第j个可选邻域元胞),此时第一全局路径102落入第一感知范围101内的部分就是上述l,落入第一感知范围101内的全局路径段i是指处于l里的每个元胞;处于选中的邻域元胞10的第一机器人103和l里的每个元胞所形成的箭头代表上述。
48.具体的, 和w的取值范围在0到2π之间。
49.在实际应用中,一方面,元胞演化规则应保证避免机器人的大角度旋转,减少轨迹突变,即机器人开始避障时的当前运行航向角w应该尽可能小,其中,w越小,所对应的航向角选择效用值越大;另一方面,元胞演化规则还应保证机器人在局部避障之后重新回到预设的全局路径上,即当机器人演化至可选邻域元胞时,机器人与落入感知范围内的所述全局路径之间形成的运行航向角应尽量小;其中,越小,邻域方向选择效用值越大;同时,还要保证可选邻域元胞与在机器人感知范围内的全局路径l之间的偏移量最小,即的值要最小;其中,越小,则距离选择效用值越大。通过这种计算方式,可以通过计算航向角选择效用值,防止机器人在避障时发生轨迹突变;并且在此基础上,增加计算机器人邻域方向选择效用值和距离选择效用值,避免机器人在避障的过程偏移预设的全局路径太多,从而实现经过局部避障之后重新回到预设的全局路径上。
50.在一些实施方式中,步骤s5还包括:获取落入感知范围内的所有机器人的剩余全局路径距离;对落入感知范围内的所有机器人的剩余全局路径距离进行比较,剩余全局路径距离最大的机器人按规划好的全局路径继续行走,其他机器人对全局路径进行调整。
51.具体地,落入感知范围内的所有机器人包括该感知范围对应的机器人,以及落入该机器人的感知范围内的其他机器人;剩余全局路径距离是指当前机器人和目标位置之间的路径距离。
52.在实际应用中,假设有机器人a和机器人b,机器人a和机器人b落入了彼此的感知范围,其中,经过比较,机器人a的剩余全局路径距离比机器人b的剩余全局路径距离大,那么机器人a按规划好的全局路径继续行走,机器人b则对全局路径进行局部调整,避让机器人a。通过这种方式,使得机器人更加智能化,提高整体运行效率。
53.由上可知,本技术提供的多机器人避障方法,通过获取全局栅格地图和各机器人的全局路径;根据全局栅格地图生成元胞空间;元胞空间包括多个元胞,每个元胞由全局栅格地图的至少一个栅格组成;根据元胞空间生成元胞状态集合;元胞状态集合包含各元胞的元胞状态信息,元胞状态信息用于表示对应的元胞的占用情况;在机器人按照对应的全局路径运动时,根据各机器人的位置更新元胞状态集合;根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整。通过将移动机器人作为独立智能体进行微观仿真,在多机器人环境下利用元胞演化规则进行自主避障,具有较好的适应性和智能性;同时具有计算量小,易仿真等优势,能够大大减少计算成本。
54.请参照图2,图2是本技术一些实施方式中的多机器人避障装置,用于对多个机器人进行控制,其中,包括以下模块:第一获取模块201:用于获取全局栅格地图和各机器人的全局路径;第一生成模块202:用于根据全局栅格地图生成元胞空间;元胞空间包括多个元胞,每个元胞由全局栅格地图的至少一个栅格组成;第二生成模块203:用于根据元胞空间生成元胞状态集合;元胞状态集合包含各元胞的元胞状态信息,元胞状态信息用于表示对应的元胞的占用情况;更新模块204:用于在机器人按照对应的全局路径运动时,根据各机器人的位置更
新元胞状态集合;调整模块205:用于根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整。
55.在一些实施例中,第一获取模块201的全局栅格地图可以是基于现有的激光雷达设备生成,是一种存储有静态环境信息的地图,全局栅格地图的分辨率决定了每一个像素距离代表的实际长度,全局栅格地图中包含多个呈矩阵分布的栅格,每个栅格包括若干个像素点。全局路径可以通过现有的全局规划算法生成,如a*算法、rrt算法等。
56.在一些实施例中,第一生成模块202的元胞空间是由元胞组成的网格空间,每个元胞即网格空间中的一个网格,网格的形状和尺寸统一,在实际应用中,也可根据实际情况采用全局栅格地图的一个或多个栅格组成一个元胞,在此不做具体限定。
57.在一些实施例中,第二生成模块203的元胞状态信息只能从元胞状态集合里选出,例如元胞状态集合里有0和1两种元素,0代表占用状态,1代表空闲状态,元胞状态信息只能从0和1两种元素中任选一种代表当前的元胞状态信息。但元胞状态集合里的元素不限于此,例如可以是其它数字、两个不同的字母或其它符号等,只需要保证两种元素不相同即可,该两种元素分别代表占用状态和空闲状态。
58.在一些实施例中,更新模块204的根据各机器人的位置更新元胞状态集合时,当某个机器人处于某元胞内,那么该元胞的元胞状态就是占用状态,把对应元胞的元胞状态信息更新为表示元胞被占用的状态信息,当机器人离开该元胞时,那么该元胞的元胞状态信息就会从占用状态变更为空闲状态,把对应元胞的元胞状态信息更新为表示元胞未被占用的状态信息。
59.在一些实施例中,调整模块205的机器人的感知范围是指以机器人为原点的一个预设尺寸的感知范围(该感知范围一般为矩形区域范围,但不限于此),另外,常见的元胞邻域形式有von neumann型邻域(即机器人的邻域元胞包括机器人所在元胞相邻的上、下、左、右四个元胞)和moore型邻域(即机器人的邻域元胞包括机器人所在元胞相邻的上、下、左、右、左上、右上、左下、右下八个元胞),本方法考虑到移动机器人的运动特性,选择moore型邻域,也就是以机器人为原点的矩形区域范围,移动机器人可移动方向包括上、下、左、右及对角线8个方向。局部调整可以是指机器人可以根据上述方向绕过处于占用状态的元胞,然后重新进入预设的全局路径中。
60.通过本技术的多机器人避障装置,采用全局规划和基于元胞动态模型局部避障的方式进行导航,针对多智能体的微观运动行为能够较好地反映,本方法通过结合机器人的运动特点,将移动机器人作为独立智能体,利用元胞演化规则进行自主避障,具有较好的适应性和智能性。
61.在进一步的实施方式中,每个元胞由全局栅格地图的一个栅格组成。
62.在实际应用中,为了与全局栅格地图相适配,进一步方便计算,本技术采用二维方形网格构建元胞空间;以栅格地图大小2m*2m,分辨率0.05m/px为例,全局静态栅格地图被划分为40*40个栅格,由此构建40*40的元胞空间。
63.在一些实施方式中,元胞状态信息为表示元胞被占用的占用状态信息或表示元胞未被占用的空闲状态信息;在一些实施方式中,更新模块204在机器人按照对应的全局路径运动时,根据各机
器人的位置更新元胞状态集合的时候,执行以下步骤:初始化各元胞状态信息。
64.其中,初始化每个元胞的元胞状态信息,将有静态障碍物体侵占的元胞对应的元胞转态信息更新为静态占用状态信息,机器人侵占的元胞对应的元胞状态信息更新为动态占用状态,其余的元胞状态信息则为空闲状态。
65.具体的,由于在商场或者货仓的某个位置会存在一些货柜或者架子等不可移动的物体,机器人无法经过该位置,因此,可以在一开始的全局栅格地图上,提前将存在不可移动物体的位置所对应的元胞进行初始化,将该元胞的元胞状态信息初始化为静态占用状态信息(例如将该元胞状态信息初始化为0,0代表该元胞处于静态占用状态信息),并且在后续的使用中都以该全局栅格地图为基础进行全局路径规划。通过这种初始化的方式,可以提前获知被占用元胞的位置,并且把这些元胞标定为不变元胞,从而在后续进行元胞状态信息更新时不对这些处于静态占用状态信息的元胞进行更新操作,从而降低后续进行更新时的计算量。
66.在一些实施方式中,机器人在根据规划好的全局路径行走的过程中,需要获取全局栅格地图上其他机器人的实时位置信息,从而更新所有元胞的元胞状态信息(对于被标定为固定元胞的元胞,可以不更新其元胞状态信息)。其中,整个全局栅格地图的元胞的元胞状态信息每隔预设周期就会更新一次,在一些优选的实施例中,调整模块205在用于根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整时,执行以下步骤:s501.以每个机器人为原点,生成一个感知范围;s502.获取落入感知范围内的元胞的元胞状态信息;s503.根据元胞状态信息和预设的元胞演化规则实时调整相应机器人的全局路径。
67.通过这种方式,以每个机器人作为独立的智能体,生成一个感知范围,在后续进行元胞状态更新时,可以仅考虑感知范围内的元胞,大大减少其他元胞状态更新的数量,减少了计算量,提高计算效率。
68.其中,步骤s503包括:s5031.根据元胞演化规则选择航向角;s5032.根据航向角调整机器人的移动方向。
69.在一些实施例中,元胞演化规则为:从可选邻域元胞中选择合适元胞,使航向角选择效用值、距离选择效用值和邻域方向选择效用值的乘积最大化;其中,航向角选择效用值为:;距离选择效用值为:;邻域方向选择效用值为:;可选邻域方向角为:;
其中,表示正弦函数;表示以自然常数e为底的指数函数;表示航向角选择效用值;表示距离选择效用值;表示邻域方向选择效用值;表示可选邻域方向角;w表示机器人开始避障时的当前运行航向角;表示机器人移动至邻域元胞时,机器人与落入感知范围内的全局路径段i之间形成的运行航向角; m表示曼哈顿距离函数;表示机器人的第j个可选邻域元胞;l表示在机器人感知范围内的全局路径;q表示落入感知范围的元胞个数;n表示邻域元胞总数。
70.具体的,和w的取值范围在0到2π之间。
71.在实际应用中,一方面,元胞演化规则应保证避免机器人的大角度旋转,减少轨迹突变,即机器人开始避障时的当前运行航向角w应该尽可能小,其中,w越小,所对应的航向角选择效用值越大;另一方面,元胞演化规则还应保证机器人在局部避障之后重新回到预设的全局路径上,即当机器人演化至可选邻域元胞时,机器人与落入感知范围内的所述全局路径之间形成的运行航向角应尽量小;其中,越小,邻域方向选择效用值越大;同时,还要保证可选邻域元胞与在机器人感知范围内的全局路径l之间的偏移量最小,即的值要最小;其中,越小,则距离选择效用值越大。通过这种计算方式,可以通过计算航向角选择效用值,防止机器人在避障时发生轨迹突变;并且在此基础上,增加计算机器人邻域方向选择效用值和距离选择效用值,避免机器人在避障的过程偏移预设的全局路径太多,从而实现经过局部避障之后重新回到预设的全局路径上。
72.在一些实施方式中,步骤s5还包括:获取落入感知范围内的所有机器人的剩余全局路径距离;对落入感知范围内的所有机器人的剩余全局路径距离进行比较,剩余全局路径距离最大的机器人按规划好的全局路径继续行走,其他机器人对全局路径进行调整。
73.具体地,落入感知范围内的所有机器人包括该感知范围对应的机器人,以及落入该机器人的感知范围内的其他机器人;剩余全局路径距离是指当前机器人和目标位置之间的路径距离。
74.具体的,调整过程参考前文。通过这种方式,使得机器人更加智能化,提高整体运行效率。
75.由上可知,本技术提供的多机器人避障装置,用于对多个机器人进行控制,通过第一获取模块201获取全局栅格地图和各机器人的全局路径;第一生成模块202根据全局栅格地图生成元胞空间;元胞空间包括多个元胞,每个元胞由全局栅格地图的至少一个栅格组成;第二生成模块203根据元胞空间生成元胞状态集合;元胞状态集合包含各元胞的元胞状态信息,元胞状态信息用于表示对应的元胞的占用情况;更新模块204在机器人按照对应的全局路径运动时,根据各机器人的位置更新元胞状态集合;调整模块205根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整。通过将移动机器人作为独立智能体进行微观仿真,在多机器人环境下利用元胞演化规则进行自主避障,具有较好的适应
性和智能性;同时具有计算量小,易仿真等优势,能够大大减少计算成本。
76.请参照图3,图3为本技术实施方式提供的一种电子设备的结构示意图,本技术提供一种电子设备,包括:处理器301和存储器302,处理器301和存储器302通过通信总线303和/或其他形式的连接机构(未标出)互连并相互通讯,存储器302存储有处理器301可执行的计算机程序,当计算设备运行时,处理器301执行该计算机程序,以在执行时执行上述实施方式的任一可选的实现方式中的方法,以实现以下功能:获取全局栅格地图和各机器人的全局路径;根据全局栅格地图生成元胞空间;元胞空间包括多个元胞,每个元胞由全局栅格地图的至少一个栅格组成;根据元胞空间生成元胞状态集合;元胞状态集合包含各元胞的元胞状态信息,元胞状态信息用于表示对应的元胞的占用情况;在机器人按照对应的全局路径运动时,根据各机器人的位置更新元胞状态集合;根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整。
77.本技术实施方式提供一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时,执行上述实施方式的任一可选的实现方式中的方法,以实现以下功能:获取全局栅格地图和各机器人的全局路径;根据全局栅格地图生成元胞空间;元胞空间包括多个元胞,每个元胞由全局栅格地图的至少一个栅格组成;根据元胞空间生成元胞状态集合;元胞状态集合包含各元胞的元胞状态信息,元胞状态信息用于表示对应的元胞的占用情况;在机器人按照对应的全局路径运动时,根据各机器人的位置更新元胞状态集合;根据机器人的感知范围内的元胞的占用情况对相应的全局路径进行局部调整。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory, 简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory, 简称eeprom),可擦除可编程只读存储器(erasable programmable read only memory, 简称eprom),可编程只读存储器(programmable red-only memory, 简称prom),只读存储器(read-only memory, 简称rom),磁存储器,快闪存储器,磁盘或光盘。
78.在本技术所提供的实施方式中,应该理解到,所揭露系统和方法,可以通过其它的方式实现。以上所描述的系统实施方式仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
79.另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
80.再者,在本技术各个实施方式中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
81.在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
82.以上所述仅为本技术的实施方式而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献