CN114833830A - 抓取方法及装置、电子设备和存储介质 - Google Patents

抓取方法及装置、电子设备和存储介质 Download PDF

Info

Publication number
CN114833830A
CN114833830A CN202210456336.3A CN202210456336A CN114833830A CN 114833830 A CN114833830 A CN 114833830A CN 202210456336 A CN202210456336 A CN 202210456336A CN 114833830 A CN114833830 A CN 114833830A
Authority
CN
China
Prior art keywords
target object
action
pose
state
duration
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.)
Withdrawn
Application number
CN202210456336.3A
Other languages
English (en)
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.)
Beijing Sensetime Technology Development Co Ltd
Original Assignee
Beijing Sensetime Technology Development 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 Beijing Sensetime Technology Development Co Ltd filed Critical Beijing Sensetime Technology Development Co Ltd
Priority to CN202210456336.3A priority Critical patent/CN114833830A/zh
Publication of CN114833830A publication Critical patent/CN114833830A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)

Abstract

本公开涉及一种抓取方法及装置、电子设备和存储介质,所述方法包括:根据获取的目标对象的第一位姿,确定机械臂的动作,以及该动作对应的可包括至少一个时间步的持续时间,根据机械臂的动作和目标对象的第一位姿,生成机械臂针对一个时间步的单步轨迹,并根据持续时间重复执行单步轨迹,以使目标对象移动到第二位姿。本公开实施例可自适应地合并重复动作,从而减少强化学习算法的推理次数,进而提高工业生产效率,同时还能提升抓取的成功率。

Description

抓取方法及装置、电子设备和存储介质
技术领域
本公开涉及计算机视觉技术领域,尤其涉及一种抓取方法及装置、电子设备和存储介质。
背景技术
随着机器人技术和人工智能技术的快速发展,机器可替代人工从事各种各样的工作。为了实现机器替代人工从事各种各样的工作,需要机械臂进行机器学习(如深度学习、强化学习),以与外界环境进行交互,实现各种抓取任务。
在工业场景中,为了降低生产成本,机械臂是使用单点接触的吸杆作为末端执行器,并且,待抓取的物体(例如工业部件)的结构往往比较复杂,需要机械臂将物体抓取到指定的目标位置和转角。在这种情况下,如果使用相关技术中的强化学习方法实现机械臂的抓取任务,在整个抓取任务的操作过程中,会存在许多重复动作,导致工业生产的效率降低。
发明内容
本公开提出了一种抓取技术方案。
根据本公开的一方面,提供了一种抓取方法,包括:获取目标对象的第一位姿,所述第一位姿包括所述目标对象当前状态的三维位置和所述目标对象当前状态的三维转角;根据所述目标对象的第一位姿,确定机械臂的动作,以及所述动作对应的持续时间,所述持续时间包括至少一个时间步;根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,所述单步轨迹为针对一个时间步生成的轨迹;根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿,所述第二位姿包括所述目标对象下一状态的三维位置和所述目标对象下一状态的三维转角。
在一种可能的实现方式中,所述根据所述目标对象的第一位姿,确定机械臂的动作,以及所述动作对应的持续时间,包括:根据所述目标对象的第一位姿、所述目标对象的至少一个历史位姿、所述机械臂的至少一个历史动作,确定所述机械臂的状态;根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间。
在一种可能的实现方式中,所述根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间,包括:根据所述机械臂的所述状态,利用策略确定所述机械臂的动作,以及所述动作对应的持续时间;其中,所述策略用于调整所述动作以及所述动作对应的持续时间以适应每个状态。
在一种可能的实现方式中,所述策略包括利用强化学习方法获取的强化学习模型中的多层感知机,其中,所述强化学习模型的状态空间表示机械臂的状态集合,动作空间表示机械臂的动作集合与持续时间集合的笛卡尔积,状态转移概率代表在每个状态下按照所述持续时间重复执行动作对应的单步轨迹后下一状态的概率,初始状态分布表示用于生成初始状态的概率分布,奖励函数表示针对每个状态下按照所述持续时间重复执行动作对应的单步轨迹后的评价,折扣系数用于调整奖励函数。
在一种可能的实现方式中,所述奖励函数包括成功奖励函数,运动奖励函数,安全奖励函数,时间惩罚奖励函数中的至少一种,所述成功奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿是否属于期望位姿集;所述运动奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿与期望位姿的距离;所述安全奖励函数用于评价所述每个状态下机械臂动作的危险程度;所述时间惩罚奖励函数用于约束所述强化学习模型的推理次数。
在一种可能的实现方式中,所述根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿之后,所述方法还包括:将目标对象的所述第二位姿,确定为所述目标对象的所述第一位姿,重新执行获取目标对象的第一位姿及之后的步骤。
在一种可能的实现方式中,所述根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,包括:利用逆动力学方法,将所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步运动轨迹。
在一种可能的实现方式中,所述机械臂包括末端执行器,所述末端执行器包括单点触控的执行器。
根据本公开的一方面,提供了一种抓取装置,包括:获取模块,用于获取目标对象的第一位姿,所述第一位姿包括所述目标对象当前状态的三维位置和所述目标对象当前状态的三维转角;确定模块,用于根据所述目标对象的第一位姿,确定机械臂的动作,以及所述动作对应的持续时间,所述持续时间包括至少一个时间步;生成模块,用于根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,所述单步轨迹为针对一个时间步生成的轨迹;执行模块,用于根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿,所述第二位姿包括所述目标对象下一状态的三维位置和所述目标对象下一状态的三维转角。
在一种可能的实现方式中,所述确定模块,用于:根据所述目标对象的第一位姿、所述目标对象的至少一个历史位姿、所述机械臂的至少一个历史动作,确定所述机械臂的状态;根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间。
在一种可能的实现方式中,所述根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间,包括:根据所述机械臂的所述状态,利用策略确定所述机械臂的动作,以及所述动作对应的持续时间;其中,所述策略用于调整所述动作以及所述动作对应的持续时间以适应每个状态。
在一种可能的实现方式中,所述策略包括利用强化学习方法获取的强化学习模型中的多层感知机,其中,所述强化学习模型的状态空间表示机械臂的状态集合,动作空间表示机械臂的动作集合与持续时间集合的笛卡尔积,状态转移概率代表在每个状态下按照所述持续时间重复执行动作对应的单步轨迹后下一状态的概率,初始状态分布表示用于生成初始状态的概率分布,奖励函数表示针对每个状态下按照所述持续时间重复执行动作对应的单步轨迹后的评价,折扣系数用于调整奖励函数。
在一种可能的实现方式中,所述奖励函数包括成功奖励函数,运动奖励函数,安全奖励函数,时间惩罚奖励函数中的至少一种,所述成功奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿是否属于期望位姿集;所述运动奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿与期望位姿的距离;所述安全奖励函数用于评价所述每个状态下机械臂动作的危险程度;所述时间惩罚奖励函数用于约束所述强化学习模型的推理次数。
在一种可能的实现方式中,所述执行模块,还用于根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿之后,将目标对象的所述第二位姿,确定为所述目标对象的所述第一位姿,重新执行获取目标对象的第一位姿及之后的步骤。
在一种可能的实现方式中,所述生成模块,用于:利用逆动力学方法,将所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步运动轨迹。
在一种可能的实现方式中,所述机械臂包括末端执行器,所述末端执行器包括单点触控的执行器。
根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
在本公开实施例中,能够根据获取的目标对象的第一位姿,确定机械臂的动作,以及该动作对应的可包括至少一个时间步的持续时间,根据机械臂的动作和目标对象的第一位姿,生成机械臂针对一个时间步的单步轨迹,并根据持续时间重复执行单步轨迹,以使目标对象移动到第二位姿。通过这种方式,在机械臂的抓取过程中,每个动作可对应不同的持续时间,以将目标对象从第一位姿(包括三维位置和三维转角)准确地移动到第二位姿(包括三维位置和三维转角),有利于自适应地合并重复动作,从而减少强化学习算法的推理次数,进而提高工业生产效率,同时还能提升抓取的成功率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1示出相关技术中强化学习的示意图。
图2示出根据本公开实施例的抓取方法的应用场景的示意图。
图3示出根据本公开实施例的抓取方法的流程图。
图4示出根据本公开实施例的目标对象的示意图。
图5示出根据本公开实施例的抓取方法的框架示意图。
图6示出根据本公开实施例的抓取装置的框图。
图7示出根据本公开实施例的一种电子设备的框图。
图8示出根据本公开实施例的另一种电子设备的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
为了更好的理解本公开实施例的抓取方法,先对相关技术中强化学习的概念进行介绍。
强化学习(Reinforcement Learning,RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(即强化学习的主体,例如包括作为学习者或者决策者的智能模型)在与环境的交互过程中,通过学习策略以达成回报最大化或实现某一目标的问题。
强化学习不同于监督学习(Supervised Learning)和非监督学习(UnsupervisedLearning),强化学习不要求预先给定任何数据,而是通过接收环境对动作的奖励(反馈)获得学习信息并更新模型参数。而监督学习是通过有标签的数据学习规则,以实现回归、分类等算法;非监督学习是通过无标签的数据,找到其中的隐藏模式,以实现聚类、降维等算法。
如图1所示的强化学习的示意图,如果智能体的某个行为策略导致环境正的奖励(强化信号),那么智能体以后产生这个行为策略的趋势便会加强。智能体的目标是在每个离散状态发现最优策略以使期望的折扣奖励和最大。
强化学习把学习看作试探评价过程,智能体选择一个动作用于环境,环境接受该动作后状态发生变化,同时产生一个强化信号(奖或惩)反馈给智能体,智能体根据强化信号和环境当前状态再选择下一个动作,选择的原则是使受到正强化(奖)的概率增大。选择的动作不仅影响立即强化值,而且影响环境下一时刻的状态及最终的强化值。
也就是说,强化学习是智能体以“试错”的方式进行学习,通过与环境进行交互获得的奖励指导行为,目标是使智能体获得最大奖励,强化学习不同于联结主义学习中的监督学习,主要表现在强化信号上,强化学习中由环境提供的强化信号,是对动作的好坏做出的一种评价(通常为标量信号),而不是告诉智能体如何去产生正确的动作。由于外部环境提供的信息很少,强化学习***必须靠自身的经历进行学习。通过这种方式,强化学习***在“动作—评价”的环境中获得知识,改进行动方案以适应环境。
强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process,MDP)。一个强化学习任务如果满足马尔可夫性则被称为马尔可夫决策过程。MDP是在环境中模拟智能体的随机性策略与收益的数学模型,且环境的状态具有马尔可夫性质。马尔可夫性质(Markov Property)是概率论中的一个概念。当一个随机过程在给定现在状态及所有过去状态情况下,其未来状态的条件概率分布仅依赖于当前状态;换句话说,在给定现在状态时,其与过去状态是条件独立的,那么此随机过程即具有马尔可夫性质。
基于此,可利用强化学习方法实现机械臂的抓取,通过使用强化学习进行训练,以获得强化学习模型的最优策略,从而实现从环境的状态到抓取动作的映射。
在本公开的实施例中,机械臂的抓取任务不仅可以适用于日常生活中的场景,还可以适用于工业场景,具有以下特点:
第一,在工业场景中,为了降低生产成本,便于后续工业工序的操作,机械臂可使用杆状的末端执行器,对比其它末端执行器(例如包括夹爪、多指机械手等),杆状的末端执行器对物体进行单点触控,自由度较低;
第二,抓取任务要求物体(例如工业部件)到达指定的位姿(包括三维位置和三维转角),并可在3维空间中进行动作决策(例如在某三维空间内对抓取物体进行移动);
第三,待抓取物体(例如工业部件)的几何结构可比较复杂,不易建立力学模型以对其进行控制。
在这种情况下,如果将相关技术中的强化学习方法(例如图1所示方法)用于上述工业场景,会产生大量的重复动作,导致工业生产的效率降低。
有鉴于此,在本公开的实施例中,通过获取目标对象(即待抓取物体)的第一位姿(即目标对象当前状态的三维位置和三维转角),并根据目标对象的第一位姿,确定机械臂的动作,以及该动作对应的可包括至少一个时间步的持续时间;根据机械臂的动作和目标对象的第一位姿,生成机械臂针对一个时间步的单步轨迹,并根据持续时间重复执行单步轨迹,以使目标对象移动到第二位姿(即目标对象下一状态的三维位置和三维转角)。
通过这种方式,可以对具有复杂几何结构的目标对象进行抓取,在机械臂的抓取过程中,每个动作可对应不同的持续时间,以将目标对象从第一位姿移动到第二位姿,有利于自适应地合并重复动作,从而减少强化学习算法的推理次数,进而提高工业生产效率,同时还能提升抓取的成功率。
图2示出根据本公开实施例的抓取方法的应用场景的示意图。如图2所示,机械臂的末端执行器可以是单点触控的杆状执行器,目标对象可以是工业部件,如果目标对象由于料框壁的遮挡导致难以抓取,可以使用本公开实施例的抓取方法对目标对象进行预抓取,将目标对象移动到可以抓取的位置和转角。
应当理解,图2仅作示意,本公开对机械臂的结构和形状不作限制。对应其他结构的机械臂,也可以采用本公开实施例的抓取方法,通过机械臂对目标对象的抓取操作,将目标对象移动到目标位姿(包括目标三维位置和目标三维转角)。本公开实施例的抓取方法不仅可以应用于生活场景(例如对食品、餐具的抓取),也可以应用于工业场景(例如对工业部件的抓取),本公开的实施例对抓取方法的应用场景不作限制。
图3示出根据本公开实施例的抓取方法的流程图,如图3所示,所述抓取方法包括:
在步骤S11中,获取目标对象的第一位姿,所述第一位姿包括所述目标对象当前状态的三维位置和所述目标对象当前状态的三维转角;
在步骤S12中,根据所述目标对象的第一位姿,确定所述机械臂的动作,以及所述动作对应的持续时间,所述持续时间包括至少一个时间步;
在步骤S13中,根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,所述单步轨迹为针对一个时间步生成的轨迹;
在步骤S14中,根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿,所述第二位姿包括所述目标对象下一状态的三维位置和所述目标对象下一状态的三维转角。
在一种可能的实现方式中,机械臂与机械臂所处的环境可以是由程序代码编写的仿真模型,所述抓取方法可以由终端设备或服务器等电子设备执行,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等,所述方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。或者,可通过服务器执行所述方法。
在一种可能的实现方式中,机械臂可以是现实世界中真实存在的机械臂,机械臂所处的环境为现实世界中的真实环境,在这种情况下,所述抓取方式可以由机械臂的处理器控制执行,所述处理器例如包括GPU(Graphics Processing Unit,图形处理单元)、NPU(Neural-Network Processing Unit,神经网络处理单元)、DSP(Digital Signal Process,数字信号处理单元)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)芯片等中的一种或组合。本公开对处理器的具体类型不作限制。
在一种可能的实现方式中,目标对象为待抓取物体。图4示出本公开实施例的目标对象的示意图。如图4所示,目标对象以工业部件的形式示出,但是,图4仅仅是示意性的示例,还可以是其它任意具有规则或不规则几何形状的物体,本公开对目标对象的形状、尺寸不作限制。
在一种可能的实现方式中,在步骤S11中,可通过图像采集设备(例如双目相机)采集包括目标对象的图像,并对该图像中的目标对象进行位姿检测,以获取目标对象的第一位姿;或者,还可以通过软件接口,调用可检测目标对象的第一位姿的功能模块(例如包括三维激光扫描仪),根据功能模块的检测结果,获取目标对象的第一位姿。本公开对获取目标对象的第一位姿的具体方法不作限制。
其中,目标对象的第一位姿可以是6D(Ddegree of freedom,即自由度)位姿,可包括目标对象当前状态的三维位置,以及目标对象当前状态的三维转角(也即欧拉角,代表目标对象绕其所在的坐标轴的旋转角度)。
比如,以空间直角坐标系为例,目标对象的三维位置可以表示为空间直角坐标系中的坐标(x,y,z),目标对象的三维转角可表示为绕x轴旋转的滚动角、绕y轴旋转的偏航角、绕z轴旋转的俯仰角。应当理解,除了使用空间直角坐标系表示目标对象的第一位姿,还可以使用极坐标系、球坐标系、柱坐标系等表示目标对象的第一位姿,本公开对用于表示目标对象的第一位姿的坐标系,以及具体的表示方法不作限制。
在步骤S11获取了目标对象的第一位姿,可在步骤S12中,根据目标对象的第一位姿,确定机械臂的动作,以及该动作对应的包括至少一个时间步的持续时间。例如,可以根据实际中机械臂抓取的应用场景创建模拟环境,可以使用强化学习从中寻找到最优策略。比如强化学习模型的策略可包括多层感知机,可使用强化学习进行训练,以获取强化模型的最优策略,从而实现目标对象状态到机械臂的动作以及对应该动作持续时间的映射。在得到最优策略之后,可以将目标对象的第一位姿输入该最优策略,输出机械臂的动作以及该动作对应的持续时间。
其中,如果机械臂的动作所对应的持续时间包括的时间步的数量越多,该动作的持续时间越长;相反的,如果机械臂的动作所对应的持续时间包括的时间步的数量越少,该动作的持续时间越短。
在一种可能的实现方式中,步骤S12可包括:根据所述目标对象的第一位姿、所述目标对象的至少一个历史位姿、所述机械臂的至少一个历史动作,确定所述机械臂的状态;根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间。
示例性地,假设当前状态为第t时刻,为了保留和时序相关的状态信息,可将第t时刻目标对象的第一位姿qt(也即第t-1时刻目标对象的第二位姿qt),以及之前的第t-1时刻目标对象的历史位姿qt-1(也即第t-2时刻目标对象的第二位姿qt-1)、之前的第t-1时刻机械臂的历史动作at-1、之前的第t-2时刻目标对象的历史位姿qt-2(也即第t-3时刻目标对象的第二位姿qt-2)、之前的第t-2时刻机械臂的历史动作at-2、之前的第t-3时刻机械臂的历史动作at-3进行合并处理,确定当前第t时刻机械臂的状态st,即:st=(at-3,t-2,t-1,qt-2,t-1,t)。
然后,可基于强化学习寻找到的最优策略,将当前第t时刻机械臂的状态st输入该最优策略,输出机械臂的动作at以及该动作at对应的持续时间。
应当理解,上文仅以目标对象最近的三个位姿与机械臂做出的最近的三个历史动作为例,本公开的实施例不限于此,可利用与时序相关的多个历史位姿以及多个历史状态。
通过这种方式,可以将目标对象最近的多个位姿与机械臂的最近的多个历史动作合并在一起,作为完整的状态输入给强化学习算法,可更加充分地利用与时序相关的状态信息,有利于更准确地确定机械臂的动作,以及该动作对应的持续时间。
在步骤S12确定了机械臂的动作,以及该动作对应的持续时间,可在步骤S13中,根据机械臂的动作和目标对象的第一位姿,生成机械臂的单步轨迹,所述单步轨迹为针对一个时间步生成的轨迹。
在一种可能的实现方式中,步骤S13可包括:利用逆动力学方法,将所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步运动轨迹。
例如,可将生成的机械臂的动作和目标对象的第一位姿输入至轨迹生成器,轨迹生成器接收到动作和第一位姿后,可通过逆动力学方法反解,求得完成该动作的机械臂关节的运动规划(Motion Planning),也即目标对象针对一个时间步的移动轨迹,其中,目标对象的第一位姿可用于确定移动轨迹的起始位姿。
也就是说,轨迹生成器根据输入的动作和第一位姿,可获取期望的机器人运动状态信息(例如包括机器人各关节的位置,关节速度及加速度等),可以通过逆动力学分析求解施加到机器人各秆件上的驱动力(或力矩)是否可以由动作***实现。
其中,逆动力学可以利用几何法、迭代牛顿欧拉算法(Recursive Newton-EulerAlgorithm)、拉格朗日(Lagrange)方程法等方法求解,本公开对此不作限制。
通过这种方式,轨迹生成器可同时考虑动作和目标对象的姿势来规划末端执行器的运动轨迹,有利于提高机械臂抓取的准确性。
在步骤S13确定了单步轨迹,可在步骤S14中,根据持续时间重复执行单步轨迹(即把动作的移动轨迹延长),重复次数为持续时间包括的时间步数量,可将重复后的动作输入给机械臂执行,以改变目标对象的三维位置和三维转角,使目标对象移动到第二位姿。
通过这种方式,可以对具有复杂几何结构的目标对象进行抓取,在机械臂的抓取过程中,每个动作可对应不同的持续时间,以将目标对象从第一位姿(包括三维位置和三维转角)移动到第二位姿(包括三维位置和三维转角),有利于自适应地合并重复动作,从而减少强化学习算法的推理次数,进而提高工业生产效率,同时还能提升抓取的成功率。
在一种可能的实现方式中,在步骤S14之后,所述方法还包括步骤S15:将目标对象的所述第二位姿,确定为所述目标对象的所述第一位姿,重新执行获取目标对象的第一位姿及之后的步骤。
举例来说,假设对于当前时刻t(当前轮)目标对象的第一位姿St,通过步骤S11~S14,可将目标对象移动至第二位姿St+1,可通过步骤S15,将目标对象的第二位姿St+1确定为下一时刻t+1(下一轮)目标对象的第一位姿St+1,重复执行步骤S11~S14,直至将目标对象移动到目标位姿。
通过这种方式,可以不断地在每一时刻(每轮)观察当前目标对象的第一位姿,确定机械臂的动作,以及该动作对应的持续时间,进而使机械臂在该持续时间内重复执行该动作,将目标对象移动至第二位姿。可通过多轮的迭代执行,将目标对象从初始位姿移动至目标位姿,每个动作可对应不同的持续时间。对比相关技术中,机械臂每个动作需要持续相同时间的方式(即每个动作的执行频率相同),会产生大量的重复动作,本公开实施例的方法有利于自适应地合并重复动作,节省强化学习算法推理的次数,提高工业生产效率。
下面对本公开实施例的抓取方法进行展开说明。
首先,可以定义机械臂执行动作的环境,可包括机械臂和环境之间的接口。该环境可以是仿真模型,也可以是真实的物理***,本公开对此不作限制。为了降低成本,提高机械臂抓取实验的安全性,可以优先采用模拟环境进行抓取实验,如图5所示的环境,机械臂、目标对象、操作仓均为程序代码编写的仿真模型。
然后,可对当前环境下的抓取任务进行建模。如图2所示,假设在工业场景中,机械臂使用杆状的末端执行器来控制目标对象的位姿,目标对象可包括几何结构复杂的工业部件,目标对象的可抓取位姿通常数量有限且容易被遮挡。在这种情况下,机械臂可能会产生不可行的命令,导致机械臂的末端执行器和其他物体(例如操作仓的仓壁)间发生破坏性碰撞。基于此,可建立了一个从不可行的抓取位姿至可行的抓取位姿的位姿纠正任务,以使纠正后的目标对象处于期望的目标位姿,以提高下一工序的精确性。如图4所示,假设存在三种不同结构的工业部件,每种工业部件可包括2个可行的抓取位姿,也即纠正后期望的目标位姿。
示例性地,假设目标对象初始的三维位置为p,三维转角为o,而P和O分别代表目标对象期望的目标位置集和目标转角集,也就是说,机械臂的抓取过程的终止条件可以表示为:p∈P∩o∈O。鼓励寻找更优的策略,可以使机械臂采用更少的动作,以更准确的成功率将目标对象抓取到符合终止条件的目标位姿。
进一步,在这个过程中,机械臂在抓取过程中可满足以下条件:
(1)在整个抓取过程中,目标对象(例如工业部件)位于预设区域内(例如操作仓);
(2)为了减少目标对象和/或机械臂末端执行器的损坏,机械臂末端部执行器的力度和速度可保持在预设范围内。并且,不鼓励从上到下推动目标对象;
(3)不鼓励机械臂的末端执行器接触目标对象以外的物体(例如操作仓的仓壁),以减少机械臂的末端执行器与其它物体的碰撞。
在对抓取任务建模之后,可基于频率自适应的强化学习方法对目标对象进行抓取训练。图5示出根据本公开实施例的抓取方法的框架示意图。对比相关技术中的强化学习方法,其抓取操作是按照某一固定频率输出动作,例如可固定5Hz的频率,每0.2秒生成一个新动作,在这个过程中,容易产生大量的重复动作,增加强化学习的推理次数。而本公开实施例的频率自适应的强化学习模型(见图5),不仅可以基于当前状态生成动作,而且还可以为每个动作生成一个合适的持续时间,可自适应地合并重复动作,从而减少了强化学习算法的推理次数,提高了抓取效率和抓取准确率。
强化学习研究的是作为主体的智能体与作为客体的环境交互的序贯决策过程,也即智能体应用策略的过程,在当前状态施加一个动作,得到新的状态,并得到一个奖励。可以将如图5所示的基于频率自适应的强化学习框架,规范化为一个动作可持续n个时间步(n∈N+,N+为正整数的集合,并且每个动作对应的n值可以不同)的马尔可夫决策过程,马尔可夫决策过程是在环境中模拟智能体(例如图5中的频率自适应的强化学习模型)的随机性策略与奖励的数学模型,其环境的状态具有马尔可夫性质,即当一个随机过程在给定现在状态及所有过去状态情况下,其未来状态的条件概率分布仅依赖于当前状态。
在一种可能的实现方式中,马尔可夫决策过程可包括状态空间、动作空间、状态转移概率、初始状态分布、奖励函数、折扣系数等元素。
其中,所述强化学习模型的状态空间表示机械臂的状态集合,动作空间表示机械臂的动作集合与持续时间集合的笛卡尔积,状态转移概率代表在每个状态下按照所述持续时间重复执行动作对应的单步轨迹后下一状态的概率,初始状态分布表示用于生成初始状态的概率分布,奖励函数表示针对每个状态下按照所述持续时间重复执行动作对应的单步轨迹后的评价,折扣系数用于调整奖励函数。
举例来说,马尔可夫决策过程可表示为元组(S,A×N+,P,d0,R,γ)。
状态空间S可表示马尔可夫决策过程中环境的状态集合。例如,在t时刻,环境的状态st∈S,st=(at-3,t-2,t-1,qt-2,t-1,t),st可由目标对象最近的三个第一位姿qt-2,t-1,t与机械臂做出的最近的三个历史动作at-3,t-2,t-1构成。本公开对状态st不作具体限制,可利用与时序相关的多个历史位姿以及多个历史状态。
动作空间A×N+表示机械臂的动作集合A与持续时间集合N+的笛卡尔积。
其中,动作集合A可以是机械臂的末端执行器能达到的点的集合。为了保持机械臂的末端执行器的运动域可处于某一适当区域内且与目标对象形状无关的空间域,可以选择球坐标系(即利用球坐标表示一个点在三维空间的位置的三维正交坐标系)表示的球面空间作为运动域,并限期球面空间的半径处于预设阈值内。例如,假设在t时刻,动作at∈A,at=(βttt),βt代表距离坐标原点的距离,θt代表仰角,φt代表方位角,可限制βtmax,βmax可表示目标对象长度的两倍,本公开对βmax的具体取值不作限制,可根据实际的应用场景进行设置。
其中,持续时间集合N+可以是正整数的集合,每个动作at可以对应n个时间步,n∈N+,每个时间步的步长是相同的。例如,如果时间步的步长为T秒,动作at对应的持续时间为n×T秒,n的取值不同,动作at对应的持续时间就不同,本公开对n值不作限制。
状态转移概率P(st+1|st,a,n)代表在每个状态st下按照持续时间重复执行动作对应的单步轨迹后下一状态st+1的概率,也即在策略π下当前状态st转移到新状态st+1的概率。
d0代表初始状态分布s0~d0(·),可用于设置初始状态s0
R代表奖励函数,用于确定每个状态下按照持续时间重复执行动作对应的单步轨迹后的评价。
在一种可能的实现方式中,所述奖励函数包括成功奖励函数,运动奖励函数,安全奖励函数,时间惩罚奖励函数中的至少一种。所述成功奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿是否属于期望位姿集;所述运动奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿与期望位姿的距离;所述安全奖励函数用于评价所述每个状态下机械臂动作的危险程度;所述时间惩罚奖励函数用于约束所述强化学习模型的推理次数。
举例来说,奖励函数R可以表示为:
R=100rv+0.2rpx+0.2rpo+10rfx+5rfz-0.1 (1)
应当理解,奖励函数R可包括成功奖励函数rv,运动奖励函数rpx、rpx,安全奖励函数rfx、rfz,时间惩罚奖励函数-0.1(常函数)中的至少一个,本公开对奖励函数R包括的函数项,以及各函数项的加权系数不作具体限制,可以根据实际的应用场景进行设置,公式(1)中各函数项的加权系数仅作示意,本公开不限于此。
在公式(1)中,rv代表成功奖励函数,可以表示为:
Figure BDA0003618881550000121
其中,q代表目标对象的第二位姿,G代表目标对象期望位姿的集合。可通过检查每个状态下按照持续时间重复执行动作对应的单步轨迹后,目标对象的第二姿态q是否在期望位姿集合G,返回给策略一个离散的奖励。例如,在目标对象的第二姿态q属于期望位姿集合G的情况下,成功奖励函数rv的值为1;在目标对象的第二姿态q不属于期望位姿集合G的情况下,成功奖励函数rv的值为0。
在公式(1)中,运动奖励函数可包括用于评价目标对象的三维位置的运动奖励函数rpx,以及用于评价目标对象的三维转角的运动奖励函数rpo
通过设置成功奖励函数,有利于快速准确地将目标对象抓取到目标位姿。
其中,运动奖励函数rpx可以表示为:
Figure BDA0003618881550000122
在公式(3)中,vc代表目标对象的移动速度(也即机械臂末端执行器的移动速度);xt-1代表在每个状态下按照持续时间重复执行动作对应的单步轨迹前,目标对象的三维位置;xt代表在每个状态下按照持续时间重复执行动作对应的单步轨迹后,目标对象的三维位置;
Figure BDA0003618881550000123
代表目标对象期望的三维位置。
其中,运动奖励函数rpo可以表示为:
Figure BDA0003618881550000124
在公式(4)中,
Figure BDA0003618881550000125
代表在每个状态下按照持续时间重复执行动作对应的单步轨迹后,目标对象的三维转角(朝向)ρ与期望的三维转角
Figure BDA0003618881550000126
的偏差。
通过设置运动奖励函数,不仅有利于使目标对象的移动速度处于合理的范围内,而且还有利于目标对象快速准确地移动到目标位姿。
在公式(1)中,安全奖励函数可包括用于使目标对象位于预设空间(例如操作仓内的空间)的安全奖励函数rfx,以及调整机械臂末端执行器施力范围的安全奖励函数rfz等,用于评价每个状态下机械臂动作的危险程度的奖励函数。
其中,安全奖励函数rfx可以表示为:
Figure BDA0003618881550000127
在公式(5)中,x代表目标对象的三维位置,xmin代表最小操作空间边界,xmax代表最大操作空间边界。
通过设置安全奖励函数rfx,可以在整个抓取过程中,使目标对象位于操作仓内,减少目标对象位于操作仓外,以及与操作仓仓壁的碰撞。
其中,安全奖励函数rfz可以表示为:
Figure BDA0003618881550000131
在公式(6)中,fz代表机械臂的末端执行器度对目标对象的z轴施加的法向力(例如末端执行器与目标对象接触平面的法向力),fmax代表机械末端执行器可对目标对象施加的最大法向力。
通过设置安全奖励函数rfz,有利于减少机械臂的末端执行器对目标对象的挤压操作,减少因机械臂的末端执行器对目标对象施加过大的力,而引起目标对象损坏的情况。
γ代表折扣系数,γ∈[0,1),可用于调整累积奖励中各奖励的权重。
其中,时间惩罚奖励函数可以为常函数,例如取值为-0.1的常函数,本公开对时间惩罚奖励函数的具体取值不作限制,可根据具体的应用场景进行设置。
通过设置时间惩罚奖励函数,有利于减少强化学习模型的推理次数,也就是说,在机械臂将目标对象从初始位姿移动到目标位姿的过程中,有利于减少状态的数量,也即机械臂采用动作的数量。
在示例中,根据马尔科夫决策过程的元组(S,A×N+,P,d0,R,γ)中的上述要素,频率自适应的强化学习模型的最优策略可以最大化累积奖励来求解,即:
Figure BDA0003618881550000132
在公式(7)中,γ代表折扣系数,用于权衡长远收益和短期收益,γ值越大越看重长远收益,收益为奖励的积累,R代表奖励函数,st代表第t时刻的状态,频率自适应的强化学习模型的策略π∶S→A×N+,可以看作输入为状态st,输出为动作at,以及动作at对应的n个时间步的函数,其含义可以表示为在t时刻的状态st下应选择的动作at及该动作对应的持续时间,其中,状态st∈S,动作at∈A,n∈N+。π*代表最优策略。
应当理解,可以使用Q学习(Q-learning)、SARSA算法、策略梯度法(PolicyGradient)及其衍生算法等强化学习算法求解公式(7),本公开对此不作限制。
通过这种方式,基于马尔科夫决策过程的元组(S,A×N+,P,d0,R,γ),有利于更高效地确定频率自适应强化学习模型的最优策略,进而有利用后续将当前状态输入该最优策略,以输出机械臂的动作以及该动作的持续时间。
在一种可能的实现方式中,根据所述机械臂的所述状态,利用策略确定所述机械臂的动作,以及所述动作对应的持续时间。其中,所述策略包括利用强化学习方法获取的强化学习模型中的多层感知机,所述策略用于调整所述动作以及所述动作对应的持续时间以适应每个状态。
举例来说,假设根据公式(7)求解出频率自适应强化学习模型的最优策略π*,利用该策略π*对目标对象进行抓取,将目标对象抓取到目标位置。比如,假设目标对象的初始位姿为s0,可以将初始的第一位姿为s0输入策略π*(s0),输出的动作a0及该动作a0对应的n0个时间步,机械臂在n0个时间步内重复执行动作a0,将目标对象抓取到第二位姿S1;之后,将第二位姿S1(也即下一时刻的第一位姿)输入策略π*(s1),输出的动作a1及该动作a1对应的n1个时间步,机械臂在n1个时间步内重复执行动作a0,将目标对象抓取到第二位姿S2(也即下一时刻的第一位姿);依次类推,直至将目标对象抓取到目标位姿St
其中,频率自适应强化学习模型的策略可以由一个多层感知机构成,该多层感知机可以是包括一个输入层、一个输出层、以及至少一个隐藏层的多层神经网络,本公开对频率自适应强化学习模型的策略的具体结构不作限制。
其中,动作对应的n个时间步,可通过argmax算法选取的向量中值最大的元素的索引,也即使得该动作以及后续动作的奖励总和最大的动作对应的索引。例如,假设输出的向量是(1,1.5,3.6,2.0),那么最大元素索引为3,该动作对应的时间步为3个。
通过这种方式,可以利用策略确定抓取过程中的每个动作,以及每个动作对应的持续时间,有利于自适应地合并重复动作,节省强化学习算法推理的次数,提高工业生产效率。
综上所述,在本公开的实施例中,可以不断地在每一时刻(每轮)观察当前目标对象的第一位姿,确定机械臂的动作,以及该动作对应的持续时间,进而使机械臂在该持续时间内重复执行该动作,将目标对象移动至第二位姿。可通过多轮的迭代执行,将目标对象从初始位姿移动至目标位姿,每个动作可对应不同的持续时间。
对比相关技术中,机械臂需要配置较为灵活的末端执行器(例如夹爪、多指机械手等),抓取任务多为对准确度要求不高的日常生活任务,待抓取物体的几何结构比较简单等特点的应用场景。本公开实施例的抓取方法,不仅可以满足上述应用场景,而且适用于工业场景下的抓取任务,机械臂的末端执行器可以是单点触控的执行器,可将目标对象移动到期望的三维位置和三维转角以提高抓取的准确性,而且可适用于目标对象的几何结构复杂的情况。
进一步,对比相关技术中,机械臂每个动作的执行频率相同,会产生大量的重复动作。本公开实施例的方法有利于自适应地合并重复动作,节省强化学习算法推理的次数,提高工业生产效率。
可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
此外,本公开还提供了抓取装置、电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任一种抓取方法,相应技术方案和描述和参见方法部分的相应记载,不再赘述。
图6示出根据本公开实施例的抓取装置的框图,如图6所示,所述装置包括:
获取模块61,用于获取目标对象的第一位姿,所述第一位姿包括所述目标对象当前状态的三维位置和所述目标对象当前状态的三维转角;
确定模块62,用于根据所述目标对象的第一位姿,确定机械臂的动作,以及所述动作对应的持续时间,所述持续时间包括至少一个时间步;
生成模块63,用于根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,所述单步轨迹为针对一个时间步生成的轨迹;
执行模块64,用于根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿,所述第二位姿包括所述目标对象下一状态的三维位置和所述目标对象下一状态的三维转角。
在一种可能的实现方式中,所述确定模块62,用于:根据所述目标对象的第一位姿、所述目标对象的至少一个历史位姿、所述机械臂的至少一个历史动作,确定所述机械臂的状态;根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间。
在一种可能的实现方式中,所述根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间,包括:根据所述机械臂的所述状态,利用策略确定所述机械臂的动作,以及所述动作对应的持续时间;其中,所述策略用于调整所述动作以及所述动作对应的持续时间以适应每个状态。
在一种可能的实现方式中,所述策略包括利用强化学习方法获取的强化学习模型中的多层感知机,其中,所述强化学习模型的状态空间表示机械臂的状态集合,动作空间表示机械臂的动作集合与持续时间集合的笛卡尔积,状态转移概率代表在每个状态下按照所述持续时间重复执行动作对应的单步轨迹后下一状态的概率,初始状态分布表示用于生成初始状态的概率分布,奖励函数表示针对每个状态下按照所述持续时间重复执行动作对应的单步轨迹后的评价,折扣系数用于调整奖励函数。
在一种可能的实现方式中,所述奖励函数包括成功奖励函数,运动奖励函数,安全奖励函数,时间惩罚奖励函数中的至少一种,所述成功奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿是否属于期望位姿集;所述运动奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿与期望位姿的距离;所述安全奖励函数用于评价所述每个状态下机械臂动作的危险程度;所述时间惩罚奖励函数用于约束所述强化学习模型的推理次数。
在一种可能的实现方式中,所述执行模块64,还用于根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿之后,将目标对象的所述第二位姿,确定为所述目标对象的所述第一位姿,重新执行获取目标对象的第一位姿及之后的步骤。
在一种可能的实现方式中,所述生成模块63,用于:利用逆动力学方法,将所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步运动轨迹。
在一种可能的实现方式中,所述机械臂包括末端执行器,所述末端执行器包括单点触控的执行器。
该方法与计算机***的内部结构存在特定技术关联,且能够解决如何提升硬件运算效率或执行效果的技术问题(包括减少数据存储量、减少数据传输量、提高硬件处理速度等),从而获得符合自然规律的计算机***内部性能改进的技术效果。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
电子设备可以被提供为终端、服务器或其它形态的设备。
图7示出根据本公开实施例的一种电子设备800的框图。例如,电子设备800可以是用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等终端设备。
参照图7,电子设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)接口812,传感器组件814,以及通信组件816。
处理组件802通常控制电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在电子设备800的操作。这些数据的示例包括用于在电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为电子设备800的各种组件提供电力。电源组件806可以包括电源管理***,一个或多个电源,及其他与为电子设备800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述电子设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当电子设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到电子设备800的打开/关闭状态,组件的相对定位,例如所述组件为电子设备800的显示器和小键盘,传感器组件814还可以检测电子设备800或电子设备800一个组件的位置改变,用户与电子设备800接触的存在或不存在,电子设备800方位或加速/减速和电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如互补金属氧化物半导体(CMOS)或电荷耦合装置(CCD)图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于电子设备800和其他设备之间有线或无线方式的通信。电子设备800可以接入基于通信标准的无线网络,如无线网络(Wi-Fi)、第二代移动通信技术(2G)、第三代移动通信技术(3G)、***移动通信技术(4G)、通用移动通信技术的长期演进(LTE)、第五代移动通信技术(5G)或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器804,上述计算机程序指令可由电子设备800的处理器820执行以完成上述方法。
图8示出根据本公开实施例的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器或终端设备。参照图8,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作***,例如微软服务器操作***(Windows ServerTM),苹果公司推出的基于图形用户界面操作***(Mac OSXTM),多用户多进程的计算机操作***(UnixTM),自由和开放原代码的类Unix操作***(LinuxTM),开放原代码的类Unix操作***(FreeBSDTM)或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。
本公开可以是***、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
若本申请技术方案涉及个人信息,应用本申请技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本申请技术方案涉及敏感个人信息,应用本申请技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (11)

1.一种抓取方法,其特征在于,包括:
获取目标对象的第一位姿,所述第一位姿包括所述目标对象当前状态的三维位置和所述目标对象当前状态的三维转角;
根据所述目标对象的第一位姿,确定机械臂的动作,以及所述动作对应的持续时间,所述持续时间包括至少一个时间步;
根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,所述单步轨迹为针对一个时间步生成的轨迹;
根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿,所述第二位姿包括所述目标对象下一状态的三维位置和所述目标对象下一状态的三维转角。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标对象的第一位姿,确定机械臂的动作,以及所述动作对应的持续时间,包括:
根据所述目标对象的第一位姿、所述目标对象的至少一个历史位姿、所述机械臂的至少一个历史动作,确定所述机械臂的状态;
根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间。
3.根据权利要求2所述的方法,其特征在于,所述根据所述机械臂的所述状态,确定所述机械臂的动作,以及所述动作对应的持续时间,包括:
根据所述机械臂的所述状态,利用策略确定所述机械臂的动作,以及所述动作对应的持续时间;
其中,所述策略用于调整所述动作以及所述动作对应的持续时间以适应每个状态。
4.根据权利要求3所述的方法,其特征在于,所述策略包括利用强化学习方法获取的强化学习模型中的多层感知机,
其中,所述强化学习模型的状态空间表示机械臂的状态集合,动作空间表示机械臂的动作集合与持续时间集合的笛卡尔积,状态转移概率代表在每个状态下按照所述持续时间重复执行动作对应的单步轨迹后下一状态的概率,初始状态分布表示用于生成初始状态的概率分布,奖励函数表示针对每个状态下按照所述持续时间重复执行动作对应的单步轨迹后的评价,折扣系数用于调整所述奖励函数。
5.根据权利要求4所述的方法,其特征在于,所述奖励函数包括成功奖励函数,运动奖励函数,安全奖励函数,时间惩罚奖励函数中的至少一种,
所述成功奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿是否属于期望位姿集;
所述运动奖励函数用于评价每个状态下按照所述持续时间重复执行动作对应的单步轨迹后,所述目标对象的所述第二位姿与期望位姿的距离;
所述安全奖励函数用于评价所述每个状态下机械臂动作的危险程度;
所述时间惩罚奖励函数用于约束所述强化学习模型的推理次数。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿之后,所述方法还包括:
将目标对象的所述第二位姿,确定为所述目标对象的所述第一位姿,重新执行获取目标对象的第一位姿及之后的步骤。
7.根据权利要求1-5中任一项所述的方法,其特征在于,所述根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,包括:
利用逆动力学方法,将所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步运动轨迹。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述机械臂包括末端执行器,所述末端执行器包括单点触控的执行器。
9.一种抓取装置,其特征在于,包括:
获取模块,用于获取目标对象的第一位姿,所述第一位姿包括所述目标对象当前状态的三维位置和所述目标对象当前状态的三维转角;
确定模块,用于根据所述目标对象的第一位姿,确定机械臂的动作,以及所述动作对应的持续时间,所述持续时间包括至少一个时间步;
生成模块,用于根据所述机械臂的所述动作和所述目标对象的第一位姿,生成所述机械臂的单步轨迹,所述单步轨迹为针对一个时间步生成的轨迹;
执行模块,用于根据所述持续时间重复执行所述单步轨迹,以使所述目标对象移动到第二位姿,所述第二位姿包括所述目标对象下一状态的三维位置和所述目标对象下一状态的三维转角。
10.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为调用所述存储器存储的指令,以执行权利要求1至8中任意一项所述的方法。
11.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至8中任意一项所述的方法。
CN202210456336.3A 2022-04-27 2022-04-27 抓取方法及装置、电子设备和存储介质 Withdrawn CN114833830A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210456336.3A CN114833830A (zh) 2022-04-27 2022-04-27 抓取方法及装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210456336.3A CN114833830A (zh) 2022-04-27 2022-04-27 抓取方法及装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN114833830A true CN114833830A (zh) 2022-08-02

Family

ID=82568657

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210456336.3A Withdrawn CN114833830A (zh) 2022-04-27 2022-04-27 抓取方法及装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN114833830A (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150231786A1 (en) * 2014-02-19 2015-08-20 Toyota Jidosha Kabushiki Kaisha Movement control method for mobile robot
CN106956261A (zh) * 2017-04-11 2017-07-18 华南理工大学 一种具有安全识别区的人机交互机械臂***及方法
CN108803499A (zh) * 2017-04-28 2018-11-13 发那科株式会社 控制装置以及机器学习装置
CN111325768A (zh) * 2020-01-31 2020-06-23 武汉大学 一种基于3d视觉和模仿学习的自由漂浮目标抓捕方法
CN112307898A (zh) * 2020-09-27 2021-02-02 中国电力科学研究院有限公司 虚拟现实环境下数据手套动作分割方法及装置
US20210201156A1 (en) * 2018-05-18 2021-07-01 Google Llc Sample-efficient reinforcement learning
WO2021218683A1 (zh) * 2020-04-30 2021-11-04 华为技术有限公司 图像处理的方法和装置
CN113807460A (zh) * 2021-09-27 2021-12-17 北京地平线机器人技术研发有限公司 智能体动作的确定方法和装置、电子设备和介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150231786A1 (en) * 2014-02-19 2015-08-20 Toyota Jidosha Kabushiki Kaisha Movement control method for mobile robot
CN106956261A (zh) * 2017-04-11 2017-07-18 华南理工大学 一种具有安全识别区的人机交互机械臂***及方法
CN108803499A (zh) * 2017-04-28 2018-11-13 发那科株式会社 控制装置以及机器学习装置
US20210201156A1 (en) * 2018-05-18 2021-07-01 Google Llc Sample-efficient reinforcement learning
CN111325768A (zh) * 2020-01-31 2020-06-23 武汉大学 一种基于3d视觉和模仿学习的自由漂浮目标抓捕方法
WO2021218683A1 (zh) * 2020-04-30 2021-11-04 华为技术有限公司 图像处理的方法和装置
CN112307898A (zh) * 2020-09-27 2021-02-02 中国电力科学研究院有限公司 虚拟现实环境下数据手套动作分割方法及装置
CN113807460A (zh) * 2021-09-27 2021-12-17 北京地平线机器人技术研发有限公司 智能体动作的确定方法和装置、电子设备和介质

Similar Documents

Publication Publication Date Title
US10293483B2 (en) Apparatus and methods for training path navigation by robots
EP3779773B1 (en) Body posture prediction method, apparatus, device, and storage medium
US11413763B2 (en) Charging robot and control method thereof
US9844873B2 (en) Apparatus and methods for haptic training of robots
Wang et al. Controlling object hand-over in human–robot collaboration via natural wearable sensing
US11580724B2 (en) Virtual teach and repeat mobile manipulation system
US11029803B2 (en) Robot
Bohez et al. Sensor fusion for robot control through deep reinforcement learning
US11559902B2 (en) Robot system and control method of the same
CN111589138B (zh) 动作预测方法、装置、设备及存储介质
Jiang et al. A data-efficient goal-directed deep reinforcement learning method for robot visuomotor skill
KR102464906B1 (ko) 패션 상품을 추천하는 전자 장치, 서버 및 그 동작 방법
CN112527104A (zh) 确定参数确定方法、装置、设备及存储介质
CN114833830A (zh) 抓取方法及装置、电子设备和存储介质
CN115376203A (zh) 一种数据处理方法及其装置
CN116079703A (zh) 机器人示教方法、装置、设备及计算机可读存储介质
US20220012585A1 (en) Deep reinforcement learning with short-term adjustments
US20240153262A1 (en) Device for managing a visual saliency model and control method thereof
Coskun et al. Robotic Grasping in Simulation Using Deep Reinforcement Learning
EP4335598A1 (en) Action abstraction controller for fully actuated robotic manipulators
Phiri et al. Enhanced robot learning using fuzzy q-learning & context-aware middleware
Guo et al. Adaptive Admittance Control for Physical Human-Robot Interaction based on Imitation and Reinforcement Learning
Maeda et al. View-based programming with reinforcement learning for robotic manipulation
WO2023057518A1 (en) Demonstration-driven reinforcement learning

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20220802