CN108687766A - 机器人的控制装置、机器学习装置以及机器学习方法 - Google Patents
机器人的控制装置、机器学习装置以及机器学习方法 Download PDFInfo
- Publication number
- CN108687766A CN108687766A CN201810282921.XA CN201810282921A CN108687766A CN 108687766 A CN108687766 A CN 108687766A CN 201810282921 A CN201810282921 A CN 201810282921A CN 108687766 A CN108687766 A CN 108687766A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- article
- operation start
- start condition
- conveyer
- 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.)
- Granted
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1669—Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1687—Assembly, peg and hole, palletising, straight line, weaving pattern movement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39106—Conveyor, pick up article, object from conveyor, bring to test unit, place it
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/02—Arm motion controller
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
本发明提供机器人的控制装置、机器学习装置以及机器学习方法。控制装置具备学习机器人进行的配置在上述运送装置上的物品的收纳动作的运转开始条件的机器学习装置,该机器学习装置将表示运转开始条件的运转开始条件数据以及表示运送装置上的物品相关的状态的运送状态数据作为表示环境的当前状态的状态变量进行观测,另外,取得表示收纳动作的适当与否判定结果的判定数据,并且使用该观测到的状态变量和该取得的判定数据,将上述运转开始条件与上述运送状态数据关联起来进行学习。
Description
技术领域
本发明涉及机器人的控制装置以及机器学习装置,特别涉及学习最佳的机器人的运转开始条件的控制装置、机器学习装置以及机器学习方法。
背景技术
有一种一边追随在传送带等运送装置上传来的至少一个物品,一边将其取出的物品运送系统(例如,日本特开平08-063214号公报等)。在这种物品运送系统中,如图9所示,通过安装在运送装置上方或机器人臂上的摄像装置等检测到达了预先设定的预定运转开始位置的物品,一边追随机器人检测出的物品,一边把持该物品,并且将把持住的物品收纳在收纳容器或收纳场所中。通过熟练的作业人员等决定图9所示的运转开始位置。
但是,在这种现有技术中,机器人从超过了预先任意决定的位置的物品起,按顺序地开始追随物品,因此如果将追随开始位置错误地设定为偏离的位置,则机器人的动作会产生浪费。另外,在经验少的作业人员中,会有难以预先决定与机器人固有的能力和配置对应的最佳的运转开始位置的问题。
发明内容
因此,本发明的目的为提供能够决定最佳的机器人的运转开始条件的控制装置、机器学习装置以及机器学习方法。
本发明的一个方式的控制装置为控制用于把持配置在运送装置上的至少一个物品来收纳在预定位置的机器人的控制装置,具备:机器学习装置,其学习上述机器人进行的配置在上述运送装置上的上述物品的收纳动作的运转开始条件。该机器学习装置具备:状态观测部,其将表示上述运转开始条件的运转开始条件数据以及表示上述运送装置上的上述物品相关的状态的运送状态数据作为表示环境的当前状态的状态变量进行观测;判定数据取得部,其取得表示上述收纳动作的适当与否判定结果的判定数据;以及学习部,其使用上述状态变量和上述判定数据,将上述运转开始条件与上述运送状态数据关联起来进行学习。
上述状态观测部还进一步将识别上述物品的类别的类别信息作为上述状态变量进行观测,上述学习部能够将上述运转开始条件与上述运送状态数据以及上述类别信息的双方关联起来进行学习。
上述判定数据能够包括直到收纳预先决定的预定数量的上述物品为止的周期时间、上述机器人在上述运送装置上遗漏物品的遗漏个数、在上述机器人收纳上述物品时驱动上述机器人的电动机的转矩以及在上述机器人收纳上述物品时产生的振动中的至少一个。
上述学习部能够具备:回报计算部,其求出与上述适当与否判定结果关联的回报;以及价值函数更新部,其使用上述回报来更新表示针对上述运送装置上的上述物品相关的状态的上述运转开始条件的价值的函数。
上述学习部能够以多层构造运算上述状态变量和上述判定数据。
上述控制装置还能够具备:决策部,其根据上述学习部的学习结果来输出基于上述运转开始条件的指令值。
上述学习部能够使用针对多个机器人分别得到的上述状态变量以及上述判定数据来学习该多个机器人各自的上述运转开始条件。
上述机器学习装置能够存在于云服务器中。
本发明的一个方式的机器学习装置,学习用于把持配置在运送装置上的至少一个物品来收纳在预定位置的机器人进行的配置在上述运送装置上的上述物品的收纳动作的运转开始条件。该机器学习装置具备:状态观测部,其将表示上述运转开始条件的运转开始条件数据以及表示上述运送装置上的上述物品相关的状态的运送状态数据作为表示环境的当前状态的状态变量进行观测;判定数据取得部,其取得表示上述收纳动作的适当与否判定结果的判定数据;以及学习部,其使用上述状态变量和上述判定数据,将上述运转开始条件与上述运送状态数据关联起来进行学习。
本发明的一个方式的机器学习方法,学习用于把持配置在运送装置上的至少一个物品来收纳在预定位置的机器人进行的配置在上述运送装置上的上述物品的收纳动作的运转开始条件。该机器学习方法具备:将表示上述运转开始条件的运转开始条件数据以及表示上述运送装置上的上述物品相关的状态的运送状态数据作为表示环境的当前状态的状态变量进行观测的步骤;取得表示上述收纳动作的适当与否判定结果的判定数据的步骤;使用上述状态变量和上述判定数据,将上述运转开始条件与上述运送状态数据关联起来进行学习的步骤。
根据本发明,与现有方式相比,将机器人的负荷抑制得较小,物品的收纳动作的周期时间变为最小,有望提高生产效率。另外,不仅考虑物品的位置,也考虑物品的种类,从而从更容易取得的物品开始动作。
附图说明
图1是第一实施方式的控制装置的概略功能框图。
图2是表示机器学习所使用的数据的例子的图。
图3是表示控制装置的一个方式的概略功能框图。
图4是表示机器学习方法的一个方式的概略流程图。
图5A是说明神经元的图。
图5B是说明神经网络的图。
图6是第二实施方式的控制装置的概略功能框图。
图7是表示物品运送系统的一个方式的概略功能框图。
图8是表示物品运送系统的其他方式的概略功能框图。
图9是说明现有技术的物品运送系统的动作的图。
具体实施方式
图1是第一实施方式的控制装置10的概略功能框图。
控制装置10能够作为例如控制机器人(未图示)的控制装置进行安装,该机器人一边追随在运送装置上传来的物品一边将其取出。控制装置10具备:机器学习装置20,其包括用于通过所谓机器学习来自主学习运转开始条件(开始取得动作的运送装置上的物品位置等)的软件(学习算法等)以及硬件(计算机的CPU等)。控制装置10具备的机器学习装置20所学习的运转开始条件相当于一种模型结构,该模型结构表现的是表示物品在运送装置上的位置和姿势等运送装置上的物品相关的状态的信息与该状态下的运转开始条件之间的相关性。
如图1中的功能块所示,控制装置10所具备的机器学习装置20具备:状态观测部22,其将表示针对在运送装置上传来的物品(未图示)相关的状态而设定的运转开始条件的运转开始条件数据S1和表示在运送装置上传来的物品相关的状态的运送状态数据S2作为表示环境的当前状态的状态变量S进行观测;判定数据取得部24,其取得表示在所设定的运转开始条件下机器人进行的物品收纳动作的适当与否判定结果的判定数据D;以及学习部26,其使用状态变量S和判定数据D,将运转开始条件数据S1与运送状态数据S2关联起来进行学习。
状态观测部22能够构成为例如计算机的CPU的一个功能。或者状态观测部22能够构成为例如使计算机的CPU发挥功能的软件。由状态观测部22观测的状态变量S中的运转开始条件数据S1能够使用例如通过熟练的作业人员申报并赋予控制装置10的运转开始条件的申报数据,或者使用从一边追随在运送装置上传来的物品一边将其取出的机器人或该机器人的控制装置取得的该机器人进行的收纳动作的日志数据等。运转开始条件数据S1例如能够使用取得动作的运转开始位置和运送装置上的物品取得顺序的决定条件(x轴方向靠近优先、二维方向靠近优先等)等。
另外,状态变量S中的运送状态数据S2例如能够使用附设在机器人上的第一测量装置(未图示)实际测量到的值和从该机器人取得的动作参数。运送状态数据S2能够使用向机器人的运转范围在传送带上传来的预定数量的物品的运送装置上的位置和姿势等。
第一测量装置例如能够从预定的位置测量运送装置整体或至少预定的区域。第一测量装置可以配置在运送装置的上方,或者也可以安装在机器人的臂上。第一测量装置能够根据例如没有传来物品的运送装置和传来物品的运送装置之间的差来运算运送装置上的物品的位置。第一测量装置可以根据例如没有传来物品的运送装置和传来物品的运送装置之间的差来运算运送装置上的物品的形状和颜色等。该运算能够例如由控制装置10进行,也能够由状态观测部22自身进行。作为第一测量装置,能够采用光学摄像装置、红外线激光器、超声波测量器等。
判定数据取得部24例如能够构成为计算机的CPU的一个功能。或者判定数据取得部24例如能够构成为使计算机的CPU发挥功能的软件。在机器人进行了在运送装置上传来的物品的收纳动作后,例如通过使用由附设在该机器人上的第一测量装置实际测量到的值和从该机器人取得的动作参数,能够取得判定数据取得部24所取得的判定数据D。判定数据D能够使用例如直到收纳预定数量的物品为止所花费的周期时间、物品的遗漏个数、驱动机器人的电动机的转矩(能够根据电动机的电流值取得)、机器人所产生的振动(能够通过安装在机器人上的加速度传感器等取得)等。判定数据D是表示执行在状态变量S下机器人执行的物品的收纳动作时的结果的指标,间接地表示收纳动作的状态。
这样,在控制装置10所具备的机器学习装置20推进学习期间,在环境中实施第一测量装置进行的向机器人的运转范围在传送带上传来的预定数量的物品的运送装置上的位置和姿势的测量、机器人进行的物品收纳作业的实施、以及第一测量装置进行的收纳作业后的运送装置上的物品位置(遗漏个数等)的测量、表示机器人的状态的数据(周期时间和转矩、振动量等)的取得。
图2表示状态变量S以及判定数据D的设定例。如图2举例所示,运转开始条件数据S1中包括的取得动作的运转开始位置st使用例如开始收纳动作的运送装置上的物品位置的x坐标值即可。另外,运送状态数据S2中包括的向机器人的运转范围在传送带上传来的预定数量的物品的运送装置上的位置和姿势(xn、yn、θn)使用例如传送带上的各个物品的x坐标值、y坐标值以及各个物品相对于坐标系的x轴所成的角度θ即可。另外,判定数据D中包括的遗漏数量1p使用例如在预先决定的预定时间以内在机器人的运转范围内没有收纳的物品的数量即可。
学习部26例如能够构成为计算机的CPU的一个功能。或者学习部26例如能够构成为使计算机的CPU发挥功能的软件。学习部26按照被总称为机器学习的任意学习算法,学习机器人进行的运送装置上的物品的收纳动作的运转开始条件。学习部26能够针对多个物品的收纳动作反复执行基于包括上述状态变量S和判定数据D的数据集合的学习。在针对多个物品的收纳动作的学习周期的反复中,状态变量S中的运转开始条件数据S1作为通过直到上次为止的学习循环而得到的运转开始条件,另外,判定数据D作为针对基于该决定好的运转开始条件的物品收纳动作的适当与否判定结果。
通过重复这样的学习循环,学习部26能够自动识别暗示运送装置上的物品相关的状态(运送状态数据S2)和机器人进行的运送装置上的物品收纳动作的运转开始条件之间的相关性的特征。在开始学习算法时,运送状态数据S2与运转开始条件之间的相关性实质上是未知的,但是学习部26随着学习的推进,慢慢识别特征并解释相关性。
如果运送状态数据S2与运转开始条件之间的相关性被解释到某种程度能够信赖的水平,则为了进行行动的选择(即决策),可以使用学习部26反复输出的学习结果,所述行动是指针对当前状态(即运送装置上的物品相关的状态)应该在哪种运转开始条件下进行物品的收纳动作。即,学习部26随着学习算法的推进,能够使运送装置上的物品相关的状态与针对该状态应该在哪种运转开始条件下进行物品的收纳动作的行动之间的相关性慢慢地接近最佳解。
如上所述,在控制装置10所具备的机器学习装置20中,学习部26使用状态观测部22观测到的状态变量S和判定数据取得部24取得的判定数据D,按照机器学习算法来学习机器人收纳运送装置上的物品时的运转开始条件。状态变量S由运转开始条件数据S1以及运送状态数据S2这样的难以受干扰的影响的数据构成,另外,判定数据D通过测量物品收纳动作后的运送装置上的物品相关的状态,或者通过取得收纳动作中的机器人的动作参数而被唯一地求出。运送状态数据S2例如依赖于作为第一测量装置的能力的机械各部的测量精度,但是期待能够观测其自身高精度的运送状态数据S2。另外,关于判定数据D也同样地依赖于第一测量装置的测量精度,并期待能够取得高精度的判定数据D。因此,根据控制装置10所具备的机器学习装置20,通过使用学习部26的学习结果,能够不依靠运算或估算而自动且准确地求出与运送装置上的物品相关的状态对应的、机器人收纳该物品时的运转开始条件。
如果能够不依靠运算或估算而自动地求出机器人进行的运送装置上的物品的收纳动作的运转开始条件,则在开始机器人进行的运送装置上的收纳动作之前只掌握运送装置上的物品相关的状态(运送状态数据S2),就能够迅速地决定机器人收纳运送装置上的物品时的适当的运转开始条件。
因此,机器人能够高效地进行运送装置上的物品的收纳动作,且不会对机器人施加负荷。
作为控制装置10所具备的机器学习装置20的一个变形例,状态观测部22能够进一步将识别作为收纳对象的物品的类别的类别信息S3作为状态变量S进行观测。类别信息S3例如能够包括作为收纳对象的物品的形状和颜色、重量等。状态观测部22例如能够从第一测量装置的输出中取得类别信息S3。这种情况下,例如运转开始条件中能够包括(作为设为收纳对象的物品的类别)类别信息S3。另外,学习部26能够将该运转开始条件与运送状态数据S2以及类别信息S3的双方关联起来进行学习。
根据上述变形例,机器学习装置20能够学习在将特定类别的物品作为机器人的收纳动作的对象时的运转开始条件。例如,关于2种成为收纳对象的物品,即使该物品在运送装置上的位置和姿势(运送状态数据S2)大致相同,在该物品的重量和形状(类别信息S3)不同的情况下,收纳该物品时的运转开始条件会产生细微不同的状况。根据上述结构,即使在这种状况下,也能够根据物品的重量和形状等(类别信息S3),将收纳收纳对象物品时的运转开始条件最优化。或者也有在推进学习中能够发现收纳对象物品在运送位置上的位置和姿势(运算状态数据S2)与物品的类别(类别信息S3)之间的相关性的情况。此时,能够根据类别信息S3以某种程度预测运送状态数据S2,所以即使在第一测量装置进行的运送装置上的物品相关的状态的测量精度低的情况下,也能够使学习适当地收敛,将收纳物品时的运转开始条件最优化。
作为控制装置10所具备的机器学习装置20的其它变形例,学习部26能够使用关于具有相同结构的多个机器人分别得到的状态变量S以及判定数据D,学习这些机器人进行的运送装置上的物品收纳动作的运转开始条件。根据该结构,能够增加包括在一定时间内得到的状态变量S和判定数据D的数据集合的量,所以将更多样的数据集合作为输入,能够提高机器人进行的运送装置上的物品收纳动作的运转开始条件的学习速度和可靠性。
在具有上述结构的机器学习装置20中,学习部26所执行的学习算法没有被特别限定,作为机器学习,能够采用公知的学习算法。图3是图1所示的控制装置10的一个方式,表示作为学习算法的一例具备了执行强化学习的学习部26的结构。强化学习是观测学习对象所存在的环境的当前状态(即输入),并且在当前状态下执行预定的行动(即输出),试错地反复进行对该行动赋予什么样的回报的循环,并将回报的总计最大化的策略(本申请的机器学习装置中机器人进行的运送装置上的物品收纳动作的运转开始条件)作为最佳解来进行学习的方法。
在图3所示的控制装置10所具备的机器学习装置20中,学习部26具备:回报计算部28,其根据状态变量S求出机器人进行的运送装置上的物品的收纳动作的适当与否判定结果(相当于在接下来的学习循环中使用的判定数据D)相关联的回报R;以及价值函数更新部30,其使用该求出的回报R来更新表示机器人进行的运送装置上的物品的收纳动作的运转开始条件的价值的函数。学习部26通过由价值函数更新部30重复函数Q的更新,来学习与运送装置上的物品相关的状态对应的机器人进行的运送装置上的物品的收纳动作的运转开始条件。
说明由学习部26执行的强化学习的算法的一例。该例子的算法作为Q学习(Q-learning)被知道,是将行动主体的状态s与在该状态s下行动主体能够选择的行动a作为独立变量,学习表示在状态s下选择了行动a时的行动的价值的函数Q(s,a)的方法。在状态s下选择价值函数Q成为最高的行动a的情况为最佳解。在状态s和行动a之间的相关性为未知的状态下开始Q学习,重复在任意的状态s下选择各种行动a的试错,由此反复更新价值函数Q,并接近最佳解。这里,构成为在作为在状态s下选择了行动a的结果,环境(即状态s)发生了变化时,得到与该变化对应的回报(即行动a的权重)r,通过引导学习以便选择得到更高回报r的行动a,能够使价值函数Q在比较短的时间内接近最佳解。
一般能够如下述的式(1)那样表示价值函数Q的更新式。在式(1)中,st以及at分别是时刻t的状态以及行动,状态通过行动at变化为st+1。rt+1是通过状态从st变化为st+1而得到的回报。maxQ的项表示在时刻t+1进行了成为最大的价值Q(在时刻t所认为的)的行动a时的Q。α以及γ分别是学习系数以及折扣率,以0<α≤1、0<γ≤1任意设定。
当学习部26执行Q学习时,状态观测部22观测到的状态变量S以及判定数据取得部24取得的判定数据D相当于更新式(上述式(1))的状态s,应该怎样变更与当前状态(即运送装置上的物品相关的状态)对应的机器人进行的运送装置上的物品的收纳动作的运转开始条件的行动相当于更新式的行动a,回报计算部28求出的回报R相当于更新式的回报r。因此,价值函数更新部30通过使用了回报R的Q学习,重复更新表示当前状态的机器人进行的运送装置上的物品的收纳动作的运转开始条件的价值的函数Q。
回报计算部28求出的回报R,例如在决定了机器人进行的运送装置上的物品的收纳动作的运转开始条件后,根据该运转开始条件实施机器人进行的运送装置上的物品的收纳动作时,
·当收纳动作的状态被判定为“适当”时(例如预定数量的物品的收纳动作的周期时间在能够容许的范围内时,物品的遗漏个数在能够容许的范围内时,驱动机器人的电动机的转矩在容许范围内时,机器人的振动量在容许范围内时等),可以设为正(+)的回报R,另一方面,
·当收纳动作的状态被判定为“不适当”时(例如预定数量的物品的收纳动作的周期时间在能够容许的范围外时,物品的遗漏个数在能够容许的范围外时,驱动机器人的电动机的转矩在容许范围外时,机器人的振动量在容许范围外时等),可以设为负(-)的回报R。
正负的回报R的绝对值可以相互相同,也可以不同。另外,作为判定的条件,可以组合判定数据D中包括的多个值进行判定。
另外,不仅能够将机器人进行的运送装置上的物品的收纳动作的状态的适当与否判定结果设定为“适当”以及“不适当”两种,能够设定为多个阶段。作为例子,当物品收纳动作的周期时间的容许范围的最大值为Tmax时,物品的收纳动作的周期时间T能够构成为,当0≤T<Tmax/5时赋予回报R=5,当Tmax/5≤T<Tmax/2时赋予回报R=2,当Tmax/2≤T≤Tmax时赋予回报R=1。进一步,也可以构成为学习的初始阶段将Tmax设定得比较大,随着学习的推进来缩小Tmax。
价值函数更新部30能够具有与通过函数Q表示的行动价值(例如数值)关联地整理了状态变量S、判定数据D和回报R而得到的行动价值表。此时,价值函数更新部30更新函数Q的行为与价值函数更新部30更新行动价值表的行为意思相同。在Q学习开始时,环境的当前状态与机器人进行的运送装置上的物品的收纳动作的运转开始条件之间的相关性是未知的,所以在行动价值表中,通过与随机决定的行动价值的值(函数Q)关联的方式准备各种状态变量S和判定数据D和回报R。另外,回报计算部28如果知道判定数据D,则能够立刻计算出与其对应的回报R,计算出的值R被写入行动价值表中。
如果使用与机器人进行的运送装置上的物品的收纳动作的状态的适当与否判定结果对应的回报R来推进Q学习,则学习被引导到选择得到更高回报R的行动的方向,根据作为在当前状态下执行所选择的行动的结果而发生变化的环境的状态(即,状态变量S以及判定数据D),改写关于在当前状态下进行的行动的行动价值的值(函数Q)并更新行动价值表。通过重复该更新,显示在行动价值表中的行动价值的值(函数Q)被改写为越是适当的行动,越成为大的值。这样,未知的环境的当前状态(运送装置上的物品相关的状态)和其所对应的行动(机器人进行的运送装置上的物品的收纳动作的运转开始条件)之间的相关性慢慢变得明确。即,通过行动价值表的更新,运送装置上的物品相关的状态与机器人进行的运送装置上的物品的收纳动作的运转开始条件之间的关系慢慢接近最佳解。
参照图4,进一步说明学习部26执行的上述Q学习的流程(即机器学习方法的一个方式)。
首先,在步骤SA01中,价值函数更新部30一边参照在该时间点的行动价值表,一边随机地选择机器人进行的运送装置上的物品的运转开始条件,作为在由状态观测部22观测到的状态变量S所表示的当前状态下进行的行动。接着,价值函数更新部30在步骤SA02中取入状态观测部22观测到的当前状态的状态变量S,在步骤SA03中取入判定数据取得部24取得的当前状态的判定数据D。
接着,价值函数更新部30在步骤SA04中根据判定数据D判断机器人的运送装置上的物品的收纳动作的运转开始条件是否适当,如果适当,则在步骤SA05中,将回报计算部28求出的正的回报R应用于函数Q的更新式,接着,在步骤SA06中,使用当前状态的状态变量S以及判定数据D和回报R和行动价值的值(更新后的函数Q)来更新行动价值表。另一方面,在步骤SA04中判断为机器人进行的运送装置上的物品的收纳动作的运转开始条件不适当时,在步骤SA07中,将回报计算部28求出的负的回报R应用于函数Q的更新式,接着,在步骤SA06中,使用当前状态的状态变量S以及判定数据D和回报R和行动价值的值(更新后的函数Q)来更新行动价值表。
学习部26通过重复步骤SA01~SA07来反复更新行动价值表,并推进机器人进行的运送装置上的物品的收纳动作的运转开始条件的学习。
在推进上述强化学习时,例如能够使用神经网络代替Q学习。图5A示意地表示神经元的模型。图5B示意地表示组合图5A所示的神经元而构成的三层神经网络的模型。神经网络例如能够通过模拟神经元的模型的运算装置和存储装置等构成。
图5A所示的神经元输出针对多个输入x(这里作为一例为输入x1~输入x3)的结果y。对各个输入x1~x3乘以与该输入x对应的权重w(w1~w3)。由此,神经元输出通过以下的式(2)表现的输出y。另外,在式(2)中,输入x、输出y以及权重w都是向量。另外,θ是偏置,fk是激活函数。
图5B所示的三层神经网络从左侧输入多个输入x(这里作为一例为输入x1~输入x3),从右侧输出结果y(这里作为一例为结果y1~y3)。在图示的例子中,对输入x1、x2、x3分别乘以对应的权重(用w1统称表示),每个输入x1、x2、x3都被输入到3个神经元N11、N12、N13中。
图5B中,用z1统称表示神经元N11~N13各自的输出。z1能够视为提取输入向量的特征量而得的特征向量。在图示的例子中,对特征向量z1分别乘以对应的权重(用w2统称表示),每个特征向量z1都被输入到2个神经元N21、N22中。特征向量z1表示权重w1与权重w2之间的特征。
图5B中,用w2统称表示神经元N21~N22各自的输出。z2能够视为提取特征向量z1的特征量而得的特征向量。在图示的例子中,对特征向量z2分别乘以对应的权重(用w3统称表示),每个特征向量z2都被输入到3个神经元N31、N32、N33中。特征向量z2表示权重w2与权重w3之间的特征。最后,神经元N31~N33分别输出结果y1~y3。
在控制装置10所具备的机器学习装置20中,将状态变量S和判定数据D作为输入x,由学习部26进行按照上述神经网络的多层结构的运算,由此能够输出机器人进行的运送装置上的物品的收纳动作的运转开始条件(结果y)。另外,神经网络的动作模式中有学习模式和价值预测模式,例如在学习模式中使用学习数据集学习权重w,能够使用学习到的权重w在价值预测模式中进行行动的价值判断。另外,在价值预测模式中也能够进行检测、分类、推论等。
上述控制装置10的结构能够记述为由计算机的CPU执行的机器学习方法(或软件)。该机器学习方法是学习机器人进行的运送装置上的物品的收纳动作的运转开始条件的机器学习方法,具有:计算机的CPU将表示机器人进行的运送装置上的物品的收纳动作的运转开始条件的运转开始条件数据S1以及表示运送装置上的物品相关的状态的运送状态数据S2作为表示机器人进行运送装置上的物品的收纳动作的环境的当前状态的状态变量S进行观测的步骤;取得表示机器人进行的运送装置上的物品的收纳动作的状态的适当与否判定结果的判定数据D的步骤;以及使用状态变量S和判定数据D,将机器人进行的运送装置上的物品的收纳动作的运转开始条件与运送状态数据S2关联地进行学习的步骤。
图6表示第二实施方式的控制装置40。
控制装置40具备机器学习装置50、取得状态观测部22观测的状态变量S的运转开始条件数据S1以及运送状态数据S2作为状态数据S0的状态数据取得部42。状态数据取得部42所取得的状态数据S0也包括类别信息S3。状态数据取得部42能够根据附设在机械上的上述第一测量装置和作业人员进行的适当的数据输入来取得状态数据S0。
控制装置40所具有的机器学习装置50除了包括通过机器学习自主学习机器人进行的运送装置上的物品的收纳动作的运转开始条件的软件(学习算法等)以及硬件(计算机的CPU等),还包括将学习到的机器人进行的运送装置上的物品的收纳动作的运转开始条件作为针对机器人(未图示)的指令而输出的软件(运算算法等)以及硬件(计算机的CPU等)。控制装置40所包括的机器学习装置50也能够具有由一个共同的CPU执行学习算法、运算算法等所有软件的结构。
决策部52能够构成为例如计算机的CPU的一个功能。或者,决策部52能够构成为例如使计算机的CPU发挥功能的软件。决策部52生成根据学习部26学习到的机器人进行的运送装置上的物品的收纳动作的运转开始条件而进行收纳动作的针对机器人的指令值C,并输出所生成的指令值C。当决策部52将基于机器人进行的运送装置上的物品的收纳动作的运转开始条件的指令值C输出给机器人时,环境的状态(运转开始条件数据S1)据此发生变化。
状态观测部22在接下来的学习循环中观测状态变量S,该状态变量S包括决策部52对环境显示或输出机器人进行的运送装置上的物品的收纳动作的运转开始条件后发生变化的运转开始条件数据S1。学习部26使用发生了变化的状态变量S来更新例如价值函数Q(即行动价值表),由此学习机器人进行的运送装置上的物品的收纳动作的运转开始条件。决策部52在学习到的机器人进行的运送装置上的物品的收纳动作的运转开始条件下根据状态变量S将基于机器人进行的运送装置上的物品的收纳动作的运转开始条件的指令值C输出给机器人。通过重复该循环,机器学习装置50推进机器人进行的运送装置上的物品的收纳动作的运转开始条件的学习,逐渐提高由机器学习装置50自身决定的机器人进行的运送装置上的物品的收纳动作的运转开始条件的可靠性。
具有上述结构的控制装置40所具备的机器学习装置50具有与上述机器学习装置20相同的效果。特别是机器学习装置50能够根据决策部52的输出使环境的状态发生变化。另一方面,在机器学习装置20中可以对外部装置(例如机器人的控制装置)要求用于使学习部26的学习结果反映给环境的相当于决策部52的功能。
图7表示具备机器人60的一个实施方式的物品运送系统70。
物品运送系统70具备具有相同机械结构的多个机器人60、60’和将这些机器人60、60’相互连接的网络72,多个机器人60、60’中的至少一个构成为具备上述控制装置40的机器人60。另外,物品运送系统70能够包括不具备控制装置40的机器人60’。机器人60、60’具有为了收纳运送装置上的物品所需要的一般的结构。
具有上述结构的物品运送系统70由多个机器人60、60’中具备控制装置40的机器人60使用学习部26的学习结果,能够不依靠运算或估算而自动且准确地求出与运送装置上的物品相关的状态对应的机器人进行的运送装置上的物品的收纳动作的运转开始条件。另外,可以构成为至少一个机器人60的控制装置40根据关于其他多个机器人60、60’分别得到的状态变量S以及判定数据D,学习与所有的机器人60、60’共通的机器人进行的运送装置上的物品的收纳动作的运转开始条件,并且所有的机器人60、60’共享该学习结果。因此,根据物品运送系统70,能够将更多样的数据集合(包括状态变量S以及判定数据D)作为输入,提高机器人进行的运送装置上的物品的收纳动作的运转开始条件的学习速度和可靠性。
图8表示具备了机器人60’的其他实施方式的物品运送系统70’。
物品运送系统70’具备机器学习装置50(或20)、具有相同的机械结构的多个机器人60’、以及将这些机器人60’与机器学习装置50(或20)相互连接的网络72。
具有上述结构的物品运送系统70’由机器学习装置50(或20)根据关于多个机器人60’分别得到的状态变量S以及判定数据D,学习与所有的机器人60’共通的机器人进行的运送装置上的物品的收纳动作的运转开始条件,使用其学习结果,不依靠运算或估算而能够自动且准确地求出与运送装置上的物品相关的状态对应的机器人进行的运送装置上的物品的收纳动作的运转开始条件。
物品运送系统70’可以具有机器学习装置50(或20)存在于在网络72中准备的云服务器或单元控制器等中的结构。根据该结构,与多个机器人60’各自存在的场所或时期无关,能够在必要时将必要数量的机器人60’与机器学习装置50(或20)连接。
从事物品运送系统70、70’的作业人员,在机器学习装置50(或20)开始学习后的适当的时期,能够执行由机器学习装置50(或20)进行的判断,即判断机器人进行的运送装置上的物品的收纳动作的运转开始条件的学习到达度(即机器人进行的运送装置上的物品的收纳动作的运转开始条件的可靠性)是否达到了要求水平。
以上,说明了本发明的实施方式,但是本发明不只限于上述实施方式的例子,而能够通过增加适当的变更来以各种方式实施。
例如,机器学习装置20、50所执行的学习算法、机器学习装置50所执行的运算算法、控制装置10、40所执行的控制算法等不限于上述情况,而能够采用各种算法。
另外,在上述实施方式中表示在控制装置10、40上由机器学习装置20、50在线进行机器学习的例子,但是也可以在控制装置10、40控制机器人时将状态数据S和判定数据D记录为日志数据,收集所记录的日志数据,由机器学习装置20、50根据从收集到的日志数据取得的状态数据S和判定数据D进行机器学习。
Claims (10)
1.一种控制装置,控制用于把持配置在运送装置上的至少一个物品来收纳在预定位置的机器人,其特征在于,
上述控制装置具备机器学习装置,其学习上述机器人进行的配置在上述运送装置上的上述物品的收纳动作的运转开始条件,
上述机器学习装置具备:
状态观测部,其将表示上述运转开始条件的运转开始条件数据以及表示上述运送装置上的上述物品相关的状态的运送状态数据作为表示环境的当前状态的状态变量进行观测;
判定数据取得部,其取得表示上述收纳动作的适当与否判定结果的判定数据;以及
学习部,其使用上述状态变量和上述判定数据,将上述运转开始条件与上述运送状态数据关联起来进行学习。
2.根据权利要求1所述的控制装置,其特征在于,
上述状态观测部还进一步将识别上述物品的类别的类别信息作为上述状态变量进行观测,
上述学习部将上述运转开始条件与上述运送状态数据以及上述类别信息的双方关联起来进行学习。
3.根据权利要求1或2所述的控制装置,其特征在于,
上述判定数据包括直到收纳预先决定的预定数量的上述物品为止的周期时间、上述机器人在上述运送装置上遗漏物品的遗漏个数、在上述机器人收纳上述物品时驱动上述机器人的电动机的转矩以及在上述机器人收纳上述物品时产生的振动中的至少一个。
4.根据权利要求1~3中的任意一项所述的控制装置,其特征在于,
上述学习部具备:
回报计算部,其求出与上述适当与否判定结果关联的回报;以及
价值函数更新部,其使用上述回报来更新表示针对上述运送装置上的上述物品相关的状态的上述运转开始条件的价值的函数。
5.根据权利要求1~4中的任意一项所述的控制装置,其特征在于,
上述学习部以多层构造运算上述状态变量和上述判定数据。
6.根据权利要求1~5中的任意一项所述的控制装置,其特征在于,
上述控制装置还具备:决策部,其根据上述学习部的学习结果来输出基于上述运转开始条件的指令值。
7.根据权利要求1~6中的任意一项所述的控制装置,其特征在于,
上述学习部使用针对多个机器人分别得到的上述状态变量以及上述判定数据来学习该多个机器人各自的上述运转开始条件。
8.根据权利要求1~7中的任意一项所述的控制装置,其特征在于,
上述机器学习装置存在于云服务器中。
9.一种机器学习装置,学习用于把持配置在运送装置上的至少一个物品来收纳在预定位置的机器人进行的配置在上述运送装置上的上述物品的收纳动作的运转开始条件,其特征在于,
该机器学习装置具备:
状态观测部,其将表示上述运转开始条件的运转开始条件数据以及表示上述运送装置上的上述物品相关的状态的运送状态数据作为表示环境的当前状态的状态变量进行观测;
判定数据取得部,其取得表示上述收纳动作的适当与否判定结果的判定数据;以及
学习部,其使用上述状态变量和上述判定数据,将上述运转开始条件与上述运送状态数据关联起来进行学习。
10.一种机器学习方法,学习用于把持配置在运送装置上的至少一个物品来收纳在预定位置的机器人进行的配置在上述运送装置上的上述物品的收纳动作的运转开始条件,其特征在于,
该机器学习方法包括:
将表示上述运转开始条件的运转开始条件数据以及表示上述运送装置上的上述物品相关的状态的运送状态数据作为表示环境的当前状态的状态变量进行观测的步骤;
取得表示上述收纳动作的适当与否判定结果的判定数据的步骤;以及
使用上述状态变量和上述判定数据,将上述运转开始条件与上述运送状态数据关联起来进行学习的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-071890 | 2017-03-31 | ||
JP2017071890A JP6490132B2 (ja) | 2017-03-31 | 2017-03-31 | ロボットの制御装置、機械学習装置及び機械学習方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108687766A true CN108687766A (zh) | 2018-10-23 |
CN108687766B CN108687766B (zh) | 2020-08-14 |
Family
ID=63524573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810282921.XA Active CN108687766B (zh) | 2017-03-31 | 2018-04-02 | 机器人的控制装置、机器学习装置以及机器学习方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10549422B2 (zh) |
JP (1) | JP6490132B2 (zh) |
CN (1) | CN108687766B (zh) |
DE (1) | DE102018002423B4 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020133881A1 (zh) * | 2018-12-29 | 2020-07-02 | 南京埃斯顿机器人工程有限公司 | 机械设备的控制学习方法和具备学习功能的机械设备控制学习系统 |
WO2020150868A1 (en) * | 2019-01-21 | 2020-07-30 | Abb Schweiz Ag | Method and apparatus for manufacturing line simulation |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7207207B2 (ja) | 2019-07-09 | 2023-01-18 | トヨタ自動車株式会社 | 演算装置、機械学習方法及び制御プログラム |
DE102020113277A1 (de) | 2020-05-15 | 2021-11-18 | Gerhard Schubert Gesellschaft mit beschränkter Haftung | Verfahren zum Erzeugen eines Trainingsdatensatzes zum Trainieren eines Industrieroboters |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009297881A (ja) * | 2008-06-17 | 2009-12-24 | Toshiba Mach Co Ltd | ハンドリング装置、制御装置及び制御方法 |
CN102837318A (zh) * | 2011-06-20 | 2012-12-26 | 株式会社安川电机 | 机器人系统 |
CN105437248A (zh) * | 2014-09-18 | 2016-03-30 | 株式会社安川电机 | 机器人系统、机器人装置以及工件拾取方法 |
CN105775726A (zh) * | 2016-04-13 | 2016-07-20 | 英华达(南京)科技有限公司 | 拾取和放置装置及其应用方法 |
CN106393102A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习装置、机器人系统及机械学习方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5041907A (en) * | 1990-01-29 | 1991-08-20 | Technistar Corporation | Automated assembly and packaging system |
JP3296643B2 (ja) * | 1992-12-21 | 2002-07-02 | 松下電工株式会社 | 部品供給方法およびその装置 |
JP3002097B2 (ja) | 1994-08-25 | 2000-01-24 | ファナック株式会社 | ビジュアルトラッキング方法 |
JP2001179664A (ja) * | 1999-12-21 | 2001-07-03 | Seiko Seiki Co Ltd | トラッキング方法、トラッキングシステム、及びトラッキング装置 |
JP2002192486A (ja) | 2000-12-25 | 2002-07-10 | Seiko Epson Corp | ロボット制御方法及び該方法を適用したロボットコントローラ |
JP2002274641A (ja) * | 2001-03-16 | 2002-09-25 | Mitsubishi Electric Engineering Co Ltd | 小物ワークの受渡し制御装置 |
JP3834307B2 (ja) * | 2003-09-29 | 2006-10-18 | ファナック株式会社 | ロボットシステム |
GB2471819B (en) | 2008-06-05 | 2012-11-28 | Toshiba Machine Co Ltd | Handling system,control device,control method,and program |
DE102009060062A1 (de) | 2009-12-22 | 2011-06-30 | Weber Maschinenbau GmbH Breidenbach, 35236 | Verfahren zur Geschwindigkeitsoptimierung eines Roboters |
JP5446887B2 (ja) * | 2010-01-06 | 2014-03-19 | セイコーエプソン株式会社 | 制御装置、ロボット、ロボットシステム及びロボットの追従方法 |
JP5623358B2 (ja) * | 2011-09-06 | 2014-11-12 | 三菱電機株式会社 | ワーク取り出し装置 |
US8808033B2 (en) | 2012-05-30 | 2014-08-19 | Cooper Technologies Company | Ground power connector saver |
DE102016009030B4 (de) | 2015-07-31 | 2019-05-09 | Fanuc Corporation | Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs |
JP6126174B2 (ja) * | 2015-07-31 | 2017-05-10 | ファナック株式会社 | 機械学習装置、アーク溶接制御装置、アーク溶接ロボットシステムおよび溶接システム |
-
2017
- 2017-03-31 JP JP2017071890A patent/JP6490132B2/ja active Active
-
2018
- 2018-03-23 DE DE102018002423.8A patent/DE102018002423B4/de active Active
- 2018-03-27 US US15/936,490 patent/US10549422B2/en active Active
- 2018-04-02 CN CN201810282921.XA patent/CN108687766B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009297881A (ja) * | 2008-06-17 | 2009-12-24 | Toshiba Mach Co Ltd | ハンドリング装置、制御装置及び制御方法 |
CN102837318A (zh) * | 2011-06-20 | 2012-12-26 | 株式会社安川电机 | 机器人系统 |
CN105437248A (zh) * | 2014-09-18 | 2016-03-30 | 株式会社安川电机 | 机器人系统、机器人装置以及工件拾取方法 |
CN106393102A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习装置、机器人系统及机械学习方法 |
CN105775726A (zh) * | 2016-04-13 | 2016-07-20 | 英华达(南京)科技有限公司 | 拾取和放置装置及其应用方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020133881A1 (zh) * | 2018-12-29 | 2020-07-02 | 南京埃斯顿机器人工程有限公司 | 机械设备的控制学习方法和具备学习功能的机械设备控制学习系统 |
WO2020150868A1 (en) * | 2019-01-21 | 2020-07-30 | Abb Schweiz Ag | Method and apparatus for manufacturing line simulation |
Also Published As
Publication number | Publication date |
---|---|
US10549422B2 (en) | 2020-02-04 |
JP2018171684A (ja) | 2018-11-08 |
DE102018002423B4 (de) | 2022-02-03 |
CN108687766B (zh) | 2020-08-14 |
DE102018002423A1 (de) | 2018-10-04 |
JP6490132B2 (ja) | 2019-03-27 |
US20180281181A1 (en) | 2018-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11904469B2 (en) | Machine learning device, robot controller, robot system, and machine learning method for learning action pattern of human | |
US11780095B2 (en) | Machine learning device, robot system, and machine learning method for learning object picking operation | |
US10692018B2 (en) | Machine learning device and machine learning method for learning optimal object grasp route | |
CN109399122A (zh) | 控制装置以及机器学习装置 | |
CN108687766A (zh) | 机器人的控制装置、机器学习装置以及机器学习方法 | |
CN106557069B (zh) | 机械学习装置和方法以及具有该机械学习装置的机床 | |
CN106557075B (zh) | 生成最佳的加速/减速的机床 | |
JP6619192B2 (ja) | 移動軸異常負荷警告機能を有するワイヤ放電加工機 | |
US20170308052A1 (en) | Cell controller for optimizing motion of production system including industrial machines | |
CN109002012A (zh) | 控制装置以及机器学习装置 | |
JP6652549B2 (ja) | 切粉除去装置及び情報処理装置 | |
JP6174669B2 (ja) | 複数の製造機械を有する製造セルを制御するセルコントロールシステム、生産システム、制御方法及び制御プログラム | |
CN108621154A (zh) | 清洗工序最优化装置以及机器学习装置 | |
CN109382838A (zh) | 控制装置以及机器学习装置 | |
US10807234B2 (en) | Component supply device and machine learning device | |
JP2017199074A (ja) | 製品の異常に関連する変数の判定値を設定する生産システム | |
CN108723889A (zh) | 加减速控制装置 | |
CN107301489A (zh) | 实施生产计划的生产系统 | |
CN109254562A (zh) | 控制装置以及学习装置 | |
US10908599B2 (en) | Testing device and machine learning device | |
CN108732963A (zh) | 控制装置及机器学习装置 | |
CN110340884A (zh) | 测定动作参数调整装置、机器学习装置以及系统 | |
CN110125955A (zh) | 控制装置以及机器学习装置 | |
JP7208254B2 (ja) | 作業最適化システムおよび作業最適化装置 | |
WO2024114921A1 (en) | Method and system for load-aware optimization of a trajectory for an industrial robot |
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 |