首页> 中国专利> 多智能体的环境探索方法、装置、电子设备及存储介质

多智能体的环境探索方法、装置、电子设备及存储介质

摘要

本申请涉及机器人研究技术领域,特别涉及一种多智能体的环境探索方法、装置、电子设备及存储介质,其中,包括:获取智能体采集的图像信息和位姿信息;并构建拓扑地图,将拓扑地图合并至同一坐标系中,得到所有智能体的全局拓扑图,并从中提取全连通图;融合得到智能体图和新全局目标点图,并将其输入至预设层次化网络中,输出关系矩阵;根据关系矩阵预测动作概率分布,并分配每个智能体的全局目标点,基于全局目标点规划每个智能体的实际探索路径,控制其沿着实际探索路径执行探索动作。由此,解决了相关技术中无法允许多个智能体以很高的效率协同探索未知的环境,导致的实时计算效率差、应用不广泛、智能体之间通讯量较大影响使用等问题。

著录项

  • 公开/公告号CN115617034A

    专利类型发明专利

  • 公开/公告日2023-01-17

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN202211067341.1

  • 申请日2022-09-01

  • 分类号G05D1/02(2020.01);

  • 代理机构北京清亦华知识产权代理事务所(普通合伙) 11201;

  • 代理人顾鲜红

  • 地址 100084 北京市海淀区清华园1号

  • 入库时间 2023-06-19 18:19:26

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-02-10

    实质审查的生效 IPC(主分类):G05D 1/02 专利申请号:2022110673411 申请日:20220901

    实质审查的生效

  • 2023-01-17

    公开

    发明专利申请公布

说明书

技术领域

本申请涉及机器人研究技术领域,特别涉及一种多智能体的环境探索方法、装置、电子设备及存储介质。

背景技术

多智能体环境探索是机器人研究中一个重要的话题,在自动驾驶、灾难救援和地外空间探索等问题中都有重要的应用价值,可以描述为多个智能体利用视觉和传感器信息对未知的场景进行探索,在探索的同时也要保证智能体之间的负载均衡,以达到更高的效率。

相关技术中,基于规划的多智能体探索算法实时计算开销大,合作效率较差;基于机器学习的算法,多个智能体的动作空间和状态空间过于复杂,难以使用单智能体的机器学习方法进行优化;栅格地图的表示过于复杂,导致训练的智能体迁移能力较差,在未知环境上部署困难,难以大规模应用;使用栅格地图作为环境表示,智能体之间的通信开销大,在通信受限场景下表现受到影响。

发明内容

本申请提供一种多智能体的环境探索方法、装置、电子设备及存储介质,以解决相关技术中栅格地图作为环境表示,无法允许多个智能体以很高的效率协同探索未知的环境,且向未知场景迁移能力弱,导致的实时计算效率差、应用不广泛、智能体之间通讯量较大影响使用等问题。

本申请第一方面实施例提供一种多智能体的环境探索方法,包括以下步骤:获取任一智能体采集的图像信息和位姿信息;根据所述图像信息和所述位姿信息构建所述任一智能体的拓扑地图,将所有智能体的拓扑地图合并至同一预设坐标系中,得到所述所有智能体的全局拓扑图,并从所述全局拓扑图中提取所述所有智能体的每个智能体的多个全连通图;融合所述每个智能体的多个全连通图,得到所述每个智能体的智能体图和新全局目标点图,并将所述智能体图和所述新全局目标点图输入至预设层次化网络中,输出所述智能体图和所述新全局目标点图之间的关系矩阵;根据所述关系矩阵预测所述每个智能体的动作概率分布,利用所述动作概率分布分配所述每个智能体的全局目标点,并基于所述全局目标点规划所述每个智能体的实际探索路径,控制所述每个智能体沿着所述实际探索路径执行预设环境探索动作。

可选地,所述根据所述图像信息和所述位姿信息构建所述任一智能体的拓扑地图,包括:在每一个全局决策步骤中,识别所述图像信息得到恒星节点或行星节点,并识别所述位姿信息得到节点的实际位置;其中,所述恒星节点智能体已经经过的地方,所述行星节点未被探索、并与所述恒星节点相连,且每个节点包括位置信息和类别信息;当检测到恒星节点或行星节点满足预设规则时,建立所述恒星节点或行星节点,并筛选有满足预设有效条件的行星节点作为全局目标点的候选池;利用预设过滤器移除所述候选池中的冗余行星节点,并利用建立的恒星节点、剩余的行星节点和每个节点的实际位置构建得到任一智能体的拓扑地图。

可选地,所述预设规则为:在检测到所述任一智能体为中心的预设范围内没有恒星节点时,添加恒星节点;在检测到行星节点与所述任一智能体的实际距离小于第一预设距离时,利用所述恒星节点代替所述行星节点;轨道节点与恒星节点的距离为第二预设距离,且以预设角度均匀分布的恒星节点周围,其中,所述轨道节点为任意行星节点。

可选地,所述预设过滤器用于:当恒星节点处于与所述任一智能体的预设范围内时,移除所述恒星节点相应的行星节点;在所述第二预设距离的范围内行星节点为预设数量;当预测障碍物阻挡行星节点到其对应恒星节点的路径时,移除所述行星节点。

可选地,所述多个全连通图包括历史智能体信息图、当前智能体信息图、历史全局目标点图和当前全局目标点图,所述融合所述每个智能体的多个全连通图,得到所述每个智能体的智能体图和新全局目标点图,包括:对所述历史智能体信息图和当前智能体信息图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述智能体图,其中,所述当前智能体信息图中每个节点代表一个不同的智能体,所述历史智能体信息图包含了历史全局时间步中所有智能体的历史信息;对所述历史全局目标点图和所述当前全局目标点图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述新全局目标点图,其中,所述当前全局目标点图包含当前的恒星节点和行星节点,所述历史全局目标点图包含所有历史选中的行星节点及其对应的恒星节点。

可选地,所述将所述智能体图和所述新全局目标点图输入至预设层次化网络中,输出所述智能体图和所述新全局目标点图之间的关系矩阵,包括:将所述智能体图和所述新全局目标点图中的恒星节点输入至预设恒星点选择器,输出恒星点关系矩阵;将所述恒星点关系矩阵、所述智能体图和所述新全局目标点图中的行星节点输入至预设行星节点选择器,输出行星点关系矩阵,根据所述行星点关系矩阵确定所述智能体图和所述新全局目标点图之间的关系矩阵。

本申请第二方面实施例提供一种多智能体的环境探索装置,包括:获取模块,用于获取任一智能体采集的图像信息和位姿信息;第一处理模块,用于根据所述图像信息和所述位姿信息构建所述任一智能体的拓扑地图,将所有智能体的拓扑地图合并至同一预设坐标系中,得到所述所有智能体的全局拓扑图,并从所述全局拓扑图中提取所述所有智能体的每个智能体的多个全连通图;第二处理模块,用于融合所述每个智能体的多个全连通图,得到所述每个智能体的智能体图和新全局目标点图,并将所述智能体图和所述新全局目标点图输入至预设层次化网络中,输出所述智能体图和所述新全局目标点图之间的关系矩阵;控制模块,用于根据所述关系矩阵预测所述每个智能体的动作概率分布,利用所述动作概率分布分配所述每个智能体的全局目标点,并基于所述全局目标点规划所述每个智能体的实际探索路径,控制所述每个智能体沿着所述实际探索路径执行预设环境探索动作。

可选地,所述第一处理模块用于:在每一个全局决策步骤中,识别所述图像信息得到恒星节点或行星节点,并识别所述位姿信息得到节点的实际位置;其中,所述恒星节点智能体已经经过的地方,所述行星节点未被探索、并与所述恒星节点相连,且每个节点包括位置信息和类别信息;当检测到恒星节点或行星节点满足预设规则时,建立所述恒星节点或行星节点,并筛选有满足预设有效条件的行星节点作为全局目标点的候选池;利用预设过滤器移除所述候选池中的冗余行星节点,并利用建立的恒星节点、剩余的行星节点和每个节点的实际位置构建得到任一智能体的拓扑地图。

可选地,所述第一处理模块进一步用于:在检测到所述任一智能体为中心的预设范围内没有恒星节点时,添加恒星节点;在检测到行星节点与所述任一智能体的实际距离小于第一预设距离时,利用所述恒星节点代替所述行星节点;轨道节点与恒星节点的距离为第二预设距离,且以预设角度均匀分布的恒星节点周围,其中,所述轨道节点为任意行星节点。

可选地,所述第一处理模块进一步用于:当恒星节点处于与所述任一智能体的预设范围内时,移除所述恒星节点相应的行星节点;在所述第二预设距离的范围内行星节点为预设数量;当预测障碍物阻挡行星节点到其对应恒星节点的路径时,移除所述行星节点。

可选地,所述第二处理模块用于:对所述历史智能体信息图和当前智能体信息图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述智能体图,其中,所述当前智能体信息图中每个节点代表一个不同的智能体,所述历史智能体信息图包含了历史全局时间步中所有智能体的历史信息;对所述历史全局目标点图和所述当前全局目标点图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述新全局目标点图,其中,所述当前全局目标点图包含当前的恒星节点和行星节点,所述历史全局目标点图包含所有历史选中的行星节点及其对应的恒星节点。

可选地,所述第二处理模块进一步用于:将所述智能体图和所述新全局目标点图中的恒星节点输入至预设恒星点选择器,输出恒星点关系矩阵;将所述恒星点关系矩阵、所述智能体图和所述新全局目标点图中的行星节点输入至预设行星节点选择器,输出行星点关系矩阵,根据所述行星点关系矩阵确定所述智能体图和所述新全局目标点图之间的关系矩阵。

本申请第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述所述的多智能体的环境探索方法。

本申请第四方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现如上述所述的多智能体的环境探索方法。

由此,本申请至少具有如下有益效果:

(1)本申请实施例采用了基于机器学习的算法,将训练好的神经网络作为智能体,分布式地部署在环境中,这样可以极大减少了实时计算的开销,并且产生了更复杂的合作策略。

(2)本申请实施例使用了一种多智能体强化学习算法——多智能体近端策略优化,以很高的数据效率对智能体的神经网络模型进行优化,达到了很高的探索效率。

(3)本申请实施例提出了一套构建拓扑地图的算法,使用拓扑地图代替了栅格地图作为智能体的输入,由于拓扑地图的抽象特性,其对环境的变化更加鲁棒,避免地图差异性大,保证一定程度的地图相似性,提高泛化性,提高了智能体的迁移能力。

(4)本申请实施例采用拓扑地图作为空间表示,拓扑地图的抽象化简单节点可以极大减少需要交换的数据量,降低了通信开销。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为根据本申请实施例的多智能体的环境探索方法的流程示意图;

图2为根据本申请实施例的基于拓扑图的多智能体环境探索流程图;

图3为根据本申请实施例的等级式拓扑规划器框架图;

图4为根据本申请实施例的多智能体的环境探索装置的方框示意图;

图5为根据本申请实施例提供的电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

多智能体环境探索是机器人研究中一个重要的话题,在自动驾驶、灾难救援和地外空间探索中等问题中都有重要的应用价值,可以描述为多个智能体利用视觉和传感器信息对未知的场景进行探索,在探索的同时也要保证智能体之间的负载均衡,以达到更高的效率。

现有技术主要包括规划相关的算法和机器学习相关的算法,规划相关的算法无论是在单智能体还是多智能体中都有很长的研究历史,这些算法不需要额外的训练过程即可直接部署在不同的环境中。

规划算法主要的思路是将SLAM(Simultaneous Localization and Mapping,即时定位与地图构建)和基于搜索的规划算法相结合,即通过视觉和传感器的输入完成地图的构建和自身定位,将周围的环境信息表示为栅格地图,然后利用搜索算法在栅格地图上进行规划,生成计划的轨迹,代表性的方法有基于frontier(边界)的方法,即将地图中已知和未知区域交接,也就是frontier作为候选的目标,在这些格点之间进行规划;还有基于图的方法,即将环境信息抽象为拓扑地图,每个节点代表一块空间区域,进而在节点之间进行规划。这些算法虽然不需要大量的训练,但是在部署的过程中存在很大的计算开销,同时由于搜索算法的参数依赖手工设计,因此这些方法的泛化性能较差,也难以表现出复杂的合作行为。

机器学习相关的算法借助神经网络的性能,可以表现出复杂的合作,尤其是以强化学习为代表的算法,在探索任务上取得了很好的效果。这些算法通常以一个训练好的神经网络模型作为智能体,在部署时可以以很小的计算开销,通过训练好的模型推理每一步智能体的动作,代表性的方法有基于循环神经网络的算法,通过循环神经网络的记忆性维护一个对环境的抽象表示;还有基于模仿学习的算法,通过模仿专家的行动轨迹来优化自身的行为。这些算法虽然取得了较好的性能,但是多数只适用于单个智能体的情景,因为智能体数目的增加带来了动作空间和状态空间的指数级增长,给算法的优化带来了极大的困难,虽然有少数算法使用了多智能体强化学习来解决这一问题,在多个智能体的情况下获得了比较好的表现,但这种方法仍然面临着以下不足之处:

首先,是在不同场景下的迁移能力较弱:一方面是由于栅格地图的精确性,对于环境噪声的鲁棒性较弱,容易受到误差的影响;另一方面是由于神经网络过拟合的特点,训练得到的智能体往往在训练环境中表现较好,但是向未知场景的迁移能力较弱,这极大制约了算法的部署。

其次,是通信量的开销过大:大多数基于机器学习和基于规划的算法都采用了栅格地图作为环境表示,这种设定下需要智能体之间进行实时通信交换地图信息,共同构建一个合并的栅格地图用于规划,如此大的通信量在通信受限时,例如洞穴探索、深海救援等场景,可能会成为制约智能体探索的因素。

下面参考附图描述本申请实施例的多智能体的环境探索方法、装置、电子设备及存储介质。具体而言,图1为本申请实施例所提供的一种多智能体的环境探索方法的流程示意图。

如图1所示,该多智能体的环境探索方法包括以下步骤:

在步骤S101中,获取任一智能体采集的图像信息和位姿信息。

其中,智能体就是具有智能的实体,任何独立的能够思想并可以同环境交互的实体都可以抽象为智能体,在此不做具体限定。

可以理解的是,本申请实施例通过获取任意智能体采集的图像信息和位姿信息,为下一步构建拓扑地图做准备。

在步骤S102中,根据所述图像信息和所述位姿信息构建所述任一智能体的拓扑地图,将所有智能体的拓扑地图合并至同一预设坐标系中,得到所述所有智能体的全局拓扑图,并从所述全局拓扑图中提取所述所有智能体的每个智能体的多个全连通图。

其中,预设坐标系可以是用户事先设置的坐标系,例如三维坐标系,在此不做具体限定。

其中,多个全连通图包括历史智能体信息图、当前智能体信息图、历史全局目标点图和当前全局目标点图。

可以理解的是,本申请实施例通过获取到的图像信息和位姿信息构建智能体的拓扑地图并将其合并至统一坐标系中,得到所有智能体的全局拓扑图,并从中提取出每个智能体的多个全联通图,利用拓扑地图的抽象特性,使得对环境的变化更加鲁棒,提高了智能体的迁移能力,减少了需要交换的数据量。

在本申请实施例中,所述根据所述图像信息和所述位姿信息构建所述任一智能体的拓扑地图,包括:在每一个全局决策步骤中,识别所述图像信息得到恒星节点或行星节点,并识别所述位姿信息得到节点的实际位置;其中,所述恒星节点智能体已经经过的地方,所述行星节点未被探索、并与所述恒星节点相连,且每个节点包括位置信息和类别信息;当检测到恒星节点或行星节点满足预设规则时,建立所述恒星节点或行星节点,并筛选有满足预设有效条件的行星节点作为全局目标点的候选池;利用预设过滤器移除所述候选池中的冗余行星节点,并利用建立的恒星节点、剩余的行星节点和每个节点的实际位置构建得到任一智能体的拓扑地图。

其中,预设规则为:在检测到所述任一智能体为中心的预设范围内没有恒星节点时,添加恒星节点;在检测到行星节点与所述任一智能体的实际距离小于第一预设距离时,利用所述恒星节点代替所述行星节点;轨道节点与恒星节点的距离为第二预设距离,且以预设角度均匀分布的恒星节点周围,其中,所述轨道节点为任意行星节点。

其中,预设范围可以是以智能体为中心,半径为r的圆内,在此不做具体限定。

其中,第一预设距离可以是用户事先设置的距离,例如:行星节点离智能体的距离小于$r$,在此不做具体限定。

其中,第二预设距离可以是用户事先设置的距离,例如:轨道节点以角度o,距离d的规律均匀分布的恒星节点周围,在此不做具体限定。

其中,预设有效条件可以是用户事先设置的条件,例如:此行星节点未阻挡其他行星节点的路径且是均匀分布在恒星节点附近的有效节点,在此不做具体限定。

其中,预设过滤器用于:当恒星节点处于与所述任一智能体的预设范围内时,移除所述恒星节点相应的行星节点;在所述第二预设距离的范围内行星节点为预设数量;当预测障碍物阻挡行星节点到其对应恒星节点的路径时,移除所述行星节点。

其中,预设范围可以是恒星节点在距离智能体d范围内,在此不做具体限定。

可以理解的是,本申请实施例在构建拓扑地图时,通过识别图像信息得到恒星节点或行星节点,同时根据位姿信息得到节点实际位置,当检测到满足规则时,建立恒星节点或行星节点并筛选出合适行星节点作为全局目标点候选,利用规则移除冗余行星节点,对拓扑图进行优化,构建出更为精确的拓扑图,使其应用更加广泛。

在步骤S103中,融合所述每个智能体的多个全连通图,得到所述每个智能体的智能体图和新全局目标点图,并将所述智能体图和所述新全局目标点图输入至预设层次化网络中,输出所述智能体图和所述新全局目标点图之间的关系矩阵。

其中,预设层次化网络可以是基于注意力机制的层次化网络,在此不做具体限定。

可以理解的是,本申请实施例通过融合智能体的多个全联通图进行图更新,得到智能体图和新全局目标点图,并将其输入至基于注意力机制的层次化网络中,推断更新的智能体图和新全局目标点图之间的关系矩阵,使得在可变数量的行星节点上进行稳定的训练和有效的规划,便于智能体更好的表达相应行星节点的感兴趣权重。

在本申请实施例中,所述融合所述每个智能体的多个全连通图,得到所述每个智能体的智能体图和新全局目标点图,包括:对所述历史智能体信息图和当前智能体信息图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述智能体图,其中,所述当前智能体信息图中每个节点代表一个不同的智能体,所述历史智能体信息图包含了历史全局时间步中所有智能体的历史信息;对所述历史全局目标点图和所述当前全局目标点图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述新全局目标点图,其中,所述当前全局目标点图包含当前的恒星节点和行星节点,所述历史全局目标点图包含所有历史选中的行星节点及其对应的恒星节点。

可以理解的是,本申请实施例将多个全连通图分成两类操作,一类为历史智能体信息图和当前智能体信息图,对其中所有节点特征进行编码,并进行多次融合得到智能体图;另一类为历史全局目标点图和当前全局目标点图,对其中所有节点特征进行编码,并进行多次融合得到新全局目标点图,通过更新后的全局目标图和智能体信息图使得拓扑图进行优化,减少了分开操作所造成的计算量,避免地图差异太大,提高了应用的广泛性。

在本申请实施例中,所述将所述智能体图和所述新全局目标点图输入至预设层次化网络中,输出所述智能体图和所述新全局目标点图之间的关系矩阵,包括:将所述智能体图和所述新全局目标点图中的恒星节点输入至预设恒星点选择器,输出恒星点关系矩阵;将所述恒星点关系矩阵、所述智能体图和所述新全局目标点图中的行星节点输入至预设行星节点选择器,输出行星点关系矩阵,根据所述行星点关系矩阵确定所述智能体图和所述新全局目标点图之间的关系矩阵。

其中,预设恒星点选器可以是对个人编码器和关系编码器进行Ns次迭代;在此不做具体限定。

其中,预设行星点选器可以是对个人编码器和关系编码器进行N

其中,个人编码器用于捕捉图中任意两个节点之间的关系;关系编码器提供来自不同图的任意两个节点之间的权值矩阵W

可以理解的是,本申请实施例将得到的智能体图和新全局目标点图中的恒星节点输入恒星点选择器,输出恒星点关系矩阵;将恒星点关系矩阵、智能体图和所述新全局目标点图中的行星节点输入至行星节点选择器中,输出行星点关系矩阵,用于预测行星点关系矩阵,便于分配全局目标点。

在步骤S104中,根据所述关系矩阵预测所述每个智能体的动作概率分布,利用所述动作概率分布分配所述每个智能体的全局目标点,并基于所述全局目标点规划所述每个智能体的实际探索路径,控制所述每个智能体沿着所述实际探索路径执行预设环境探索动作。

其中,预设环境探索动作可以用户事先设置的动作,例如:救援机器人沿着实际探索路径进行搜寻工作,可根据实际情况进行调整,在此不做具体限定。

根据本申请实施例提出的多智能体的环境探索方法,通过智能体采集到的图像信息和位姿信息构建一个合并的拓扑图,然后从中提取四种类型的全连通图结构,融合全连通图得到智能体图和新全局目标点图,并将其输入至层次拓扑规划器中,以分层级的方式预测全局目标点,并且基于全局目标点规划实际探索路径,控制智能体执行对应的环境探索动作,既可以以很高的数据效率对智能体的神经网络模型进行优化,达到了很高的探索效率,也可以实现对拓扑图的优化,使得对环境的变化更加鲁棒,提高了智能体的迁移能力。由此,解决了相关技术中栅格地图作为环境表示,无法允许多个智能体以很高的效率协同探索未知的环境,无法部署到不同的场景中,机器学习相关的算法中神经网络过拟合的特点向未知场景迁移能力弱,导致的实时计算效率差、应用不广泛、智能体之间通讯量较大影响使用等问题。

下面将结合图2和图3对多智能体的环境探索方法进行详细阐述,其中,多智能体探索框架包含拓扑建图器、等级式拓扑规划器、图记忆融合器、概率点选择器、恒星点选择器、行星点选择器等多个模块,具体如下:

(1)拓扑建图器:用于接收智能体采集的图像信息和位姿信号并构建更精确的拓扑图,如图2所示。对于拓扑图的构造,一旦节点满足基于规则的需求,就建立节点,然后,在每一个全局决策步骤中,基于预测出的局部网格地图和一些规则,对拓扑图进行优化。拓扑建图主要包含拓扑地图构建和拓扑地图合并。

其中,拓扑地图构建主要考虑拓扑图中的两种节点:恒星节点和行星节点。其中,恒星节点位于智能体已经经过的地方,行星节点未被探索并与恒星节点相连,而每个节点包含的信息有位置和类别,对于更精确的拓扑图,遵循以下规则:

(a)当以智能体为中心,半径为r的圆内没有恒星节点时,添加一个恒星节点。

(b)当行星节点离智能体的距离小于$r$,用恒星节点代替行星节点。

(c)轨道节点以角度o,距离d的规律均匀分布的恒星节点周围。

同时,在每一个全局决策步骤中还会筛选有效行星节点作为全局目标点的候选池,然后根据以下规则移除冗余的行星节点:

(a)当恒星节点在距离智能体d范围内时,移除相应的行星节点。

(b)在$d$内,只存在一个轨道节点。

(c)当预测障碍物阻挡行星节点到其对应恒星节点的路径时,行星节点被移除。

拓扑地图合并则是为了更好的协作,本申请实施例根据智能体的估计姿态将所有单独的拓扑地图转换,并合并到同一个坐标系中,最后会对合并后的全局拓扑图提取出四个全连通图类。

(2)等级式拓扑规划器:为了在可变数量的行星点上进行稳定的训练和有效的规划,提出了一个等级式的网络,该网络利用恒星节点的偏好来帮助智能体更好地表达相应行星节点的感兴趣权重,其中,等级式拓扑规划器的流程图如图3所示,具体来说:首先,用图记忆融合器中每类图对应的历史图来进行图更新,然后,概率点选择器通过一个基于注意力机制的层次化网络,推断更新的智能体信息图和全局目标点图之间的关系矩阵,最后,根据动作解码器中的动作概率分布为每个智能体分配全局目标点。

(3)图记忆融合器:在每个全局步骤中,提供了4类全连接图,并将它们分成两对分别是历史智能体信息图和智能体信息图、历史全局目标点图和全局目标点图,其中,全局目标点图包含当前的恒星节点和行星节点,而历史全局目标点图包含所有历史选中的行星节点及其对应的恒星节点,智能体信息图中的每个节点代表一个不同的智能体,它的历史智能体信息图包含了历史全局时间步中所有智能体的过去信息,该模块对每一对图进行图融合,将历史信息合并。

具体而言:首先使用权重共享的多层感知(MLP)对所有节点特征进行编码,然后,图融合对每个图对进行Nf次的合并操作,输出更新后的全局目标图和智能体信息图,图融合包括个体编码器和关系编码器,分别采用自注意机制和交叉注意机制。

(4)概率点选择器:概率点选择器包含两个模块:恒星点选择器和行星点选择器。首先,恒星点选择器利用智能体信息图和全局目标点图中的恒星节点计算恒星点关系矩阵,然后,将智能体信息图、全局目标点图中的行星节点和恒星点关系矩阵发送到行星节点选择器,预测行星点关系矩阵,用于分配全局目标点。

(5)恒星点选择器:恒星点选择器对个人编码器和关系编码器进行Ns次迭代。

其中,个人编码器捕捉图中任意两个节点之间的关系,通过对W

关系编码器提供来自不同图的任意两个节点之间的权值矩阵W

(6)行星点选择器:与恒星点选择器类似,该模块进行N

综上所述,本申请实施例利用强化学习的方式促进多机合作;利用拓扑地图抽象化表征地图节点,避免地图差异性大,保证一定程度的地图相似性,提高泛化性;拓扑地图的抽象化简单节点可以大幅度降低通信量。

其次参照附图描述根据本申请实施例提出的多智能体的环境探索装置。

图4是本申请实施例的多智能体的环境探索装置的方框示意图。

如图4所示,该多智能体的环境探索装置10包括:获取模块100、第一处理模块200、第二处理模块300和控制模块400。

其中,获取模块100用于获取任一智能体采集的图像信息和位姿信息;第一处理模块200用于根据所述图像信息和所述位姿信息构建所述任一智能体的拓扑地图,将所有智能体的拓扑地图合并至同一预设坐标系中,得到所述所有智能体的全局拓扑图,并从所述全局拓扑图中提取所述所有智能体的每个智能体的多个全连通图;第二处理模块300用于融合所述每个智能体的多个全连通图,得到所述每个智能体的智能体图和新全局目标点图,并将所述智能体图和所述新全局目标点图输入至预设层次化网络中,输出所述智能体图和所述新全局目标点图之间的关系矩阵;控制模块400用于根据所述关系矩阵预测所述每个智能体的动作概率分布,利用所述动作概率分布分配所述每个智能体的全局目标点,并基于所述全局目标点规划所述每个智能体的实际探索路径,控制所述每个智能体沿着所述实际探索路径执行预设环境探索动作。

在本申请实施例中,所述第一处理模块200用于:在每一个全局决策步骤中,识别所述图像信息得到恒星节点或行星节点,并识别所述位姿信息得到节点的实际位置;其中,所述恒星节点智能体已经经过的地方,所述行星节点未被探索、并与所述恒星节点相连,且每个节点包括位置信息和类别信息;当检测到恒星节点或行星节点满足预设规则时,建立所述恒星节点或行星节点,并筛选有满足预设有效条件的行星节点作为全局目标点的候选池;利用预设过滤器移除所述候选池中的冗余行星节点,并利用建立的恒星节点、剩余的行星节点和每个节点的实际位置构建得到任一智能体的拓扑地图。

在本申请实施例中,所述第一处理模块200进一步用于:在检测到所述任一智能体为中心的预设范围内没有恒星节点时,添加恒星节点;在检测到行星节点与所述任一智能体的实际距离小于第一预设距离时,利用所述恒星节点代替所述行星节点;轨道节点与恒星节点的距离为第二预设距离,且以预设角度均匀分布的恒星节点周围,其中,所述轨道节点为任意行星节点。

在本申请实施例中,所述第一处理模块200进一步用于:当恒星节点处于与所述任一智能体的预设范围内时,移除所述恒星节点相应的行星节点;在所述第二预设距离的范围内行星节点为预设数量;当预测障碍物阻挡行星节点到其对应恒星节点的路径时,移除所述行星节点。

在本申请实施例中,所述第二处理模块300用于:对所述历史智能体信息图和当前智能体信息图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述智能体图,其中,所述当前智能体信息图中每个节点代表一个不同的智能体,所述历史智能体信息图包含了历史全局时间步中所有智能体的历史信息;对所述历史全局目标点图和所述当前全局目标点图中所有节点特征进行编码,并根据编码后的节点特征进行多次融合,得到所述新全局目标点图,其中,所述当前全局目标点图包含当前的恒星节点和行星节点,所述历史全局目标点图包含所有历史选中的行星节点及其对应的恒星节点。

在本申请实施例中,所述第二处理模块300进一步用于:将所述智能体图和所述新全局目标点图中的恒星节点输入至预设恒星点选择器,输出恒星点关系矩阵;将所述恒星点关系矩阵、所述智能体图和所述新全局目标点图中的行星节点输入至预设行星节点选择器,输出行星点关系矩阵,根据所述行星点关系矩阵确定所述智能体图和所述新全局目标点图之间的关系矩阵。

需要说明的是,前述对多智能体的环境探索方法实施例的解释说明也适用于该实施例的多智能体的环境探索装置,此处不再赘述。

根据本申请实施例提出的多智能体的环境探索装置,通过智能体采集到的图像信息和位姿信息构建一个合并的拓扑图,然后从中提取四种类型的全连通图结构,融合全连通图得到智能体图和新全局目标点图,并将其输入至层次拓扑规划器中,以分层级的方式预测全局目标点,并且基于全局目标点规划实际探索路径,控制智能体执行对应的环境探索动作,既可以以很高的数据效率对智能体的神经网络模型进行优化,达到了很高的探索效率,也可以实现对拓扑图的优化,使得对环境的变化更加鲁棒,提高了智能体的迁移能力。由此,解决了相关技术中栅格地图作为环境表示,无法允许多个智能体以很高的效率协同探索未知的环境,无法部署到不同的场景中,机器学习相关的算法中神经网络过拟合的特点向未知场景迁移能力弱,导致的实时计算效率差、应用不广泛、智能体之间通讯量较大影响使用等问题。

图5为本申请实施例提供的电子设备的结构示意图。该电子设备可以包括:

存储器501、处理器502及存储在存储器501上并可在处理器502上运行的计算机程序。

处理器502执行程序时实现上述实施例中提供的多智能体的环境探索方法。

进一步地,电子设备还包括:

通信接口503,用于存储器501和处理器502之间的通信。

存储器501,用于存放可在处理器502上运行的计算机程序。

存储器501可能包含高速RAM(Random Access Memory,随机存取存储器)存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。

如果存储器501、处理器502和通信接口503独立实现,则通信接口503、存储器501和处理器502可以通过总线相互连接并完成相互间的通信。总线可以是ISA(IndustryStandard Architecture,工业标准体系结构)总线、PCI(Peripheral Component,外部设备互连)总线或EISA(Extended Industry Standard Architecture,扩展工业标准体系结构)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

可选的,在具体实现上,如果存储器501、处理器502及通信接口503,集成在一块芯片上实现,则存储器501、处理器502及通信接口503可以通过内部接口完成相互间的通信。

处理器502可能是一个CPU(Central Processing Unit,中央处理器),或者是ASIC(Application Specific Integrated Circuit,特定集成电路),或者是被配置成实施本申请实施例的一个或多个集成电路。

本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的多智能体的环境探索方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,N个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列,现场可编程门阵列等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号