CN114667494A - 机器人控制模型学习方法、机器人控制模型学习装置、机器人控制模型学习程序、机器人控制方法、机器人控制装置、机器人控制程序以及机器人 - Google Patents

机器人控制模型学习方法、机器人控制模型学习装置、机器人控制模型学习程序、机器人控制方法、机器人控制装置、机器人控制程序以及机器人 Download PDF

Info

Publication number
CN114667494A
CN114667494A CN202080076868.3A CN202080076868A CN114667494A CN 114667494 A CN114667494 A CN 114667494A CN 202080076868 A CN202080076868 A CN 202080076868A CN 114667494 A CN114667494 A CN 114667494A
Authority
CN
China
Prior art keywords
robot
robot control
control model
state
destination
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.)
Pending
Application number
CN202080076868.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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Publication of CN114667494A publication Critical patent/CN114667494A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Biomedical Technology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Feedback Control In General (AREA)

Abstract

机器人控制模型学习装置(10)对于以表示在动态环境中向目的地自主行驶的机器人的状态的状态信息为输入而从包括介入环境的介入行动的多个行动中选择并输出与机器人的状态对应的行动的机器人控制模型,将执行了介入行动的介入次数作为负的报酬对该机器人控制模型进行强化学习。

Description

机器人控制模型学习方法、机器人控制模型学习装置、机器人 控制模型学习程序、机器人控制方法、机器人控制装置、机器 人控制程序以及机器人
技术领域
本公开的技术涉及机器人控制模型学习方法、机器人控制模型学习装置、机器人控制模型学习程序、机器人控制方法、机器人控制装置、机器人控制程序以及机器人。
背景技术
在以RRT(Rapidly-exploring Random Tree:快速扩展随机树)或PRM(Probabilistic Road Map:概率路线图)为代表的路径计划方法中,通过进行将被采样的空间上的各地点作为节点的图表搜索,导出从初始位置向目的位置的路径。
这些方法以静态已知的环境为对象,在动态环境下,每当环境发生变化时需要进行“重新计划”。
现有的“重新计划”方法的基本是根据环境变化来更新地图,搜索能够连续地变形的另外的全局路径,但在如人群环境那样的密集连续地产生变化那样的环境中找不到解,在重新计划中可能频繁地引起机器人的停止。
另外,在人群等拥挤环境下,单纯地持续去除眼前的障碍物,对环境造成很大的压力。
非专利文献1(Decentralized Non-communicating Multiagent CollisionAvoidance with Deep Reinforcement Learning https://arxiv.org/pdf/1609.07845)中公开了通过深度强化学习获得碰撞回避策略的技术。在非专利文献1所公开的技术中,获得在回避与周边的代理碰撞的同时使到达目的地的到达时间最小化的策略。
非专利文献2(Socially Aware Motion Planning with Deep ReinforcementLearning https://arxiv.org/pdf/1703.08862.pdf)公开了对非专利文献1所公开的技术进行了改进的技术。在非专利文献2所公开的技术中,通过对考虑了人的碰撞回避行动的特性的报酬函数添加社交范数(社会规范),从而实现社会上自然的回避行动。
在非专利文献3(ZMP https://news.mynavi.jp/article/20180323-604926/)中公开了如下技术:通过对路径计划上的障碍物(人)进行催促让路的介入行动,不变更机器人自身的路径计划地进行自主行驶。
发明内容
发明所要解决的课题
然而,上述非专利文献1、2所公开的技术都仅处理针对环境的消极的碰撞回避行动,不涉及介入行动。
另外,非专利文献1、2所公开的技术是设想与少数的代理的交互的技术,没有设想人群环境下的情况。
另外,如非专利文献3所公开的技术那样,基于单纯的策略的介入虽然安装容易,但若介入的频度高,则会成为环境侧的压力的原因,并且有时会使周围的步行者组的输送效率恶化。
本公开的技术是鉴于上述的点而完成的,其目的在于提供在动态环境中使机器人向目的地移动的情况下,能够减少机器人介入周围环境的介入行动的次数的机器人控制模型学习方法、机器人控制模型学习装置、机器人控制模型学习程序、机器人控制方法、机器人控制装置、机器人控制程序以及机器人。
用于解决课题的手段
本公开的第一方式是机器人控制模型学习方法,其具备:学习步骤,对于以表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息为输入而从包括介入所述环境的介入行动的多个行动中选择并输出与所述机器人的状态对应的行动的机器人控制模型,将执行了所述介入行动的介入次数作为负的报酬对该机器人控制模型进行强化学习。
在上述第一方式中,也可以是,所述行动包括所述机器人的移动方向、所述机器人的移动速度以及所述介入行动中的至少1个,以使所述机器人到达所述目的地为止的到达时间以及所述介入次数中的至少一方变小的方式给出所述报酬。
在上述第一方式中,也可以是,所述行动包括回避所述机器人与其他物体碰撞的回避行动,以使回避所述碰撞的回避次数变小的方式给出所述报酬。
在上述第一方式中,也可以是,所述学习步骤通过对表示所述机器人的状态的状态价值函数进行更新来进行强化学习。
本公开的第二方式是一种机器人控制模型学习装置,其包括:学习部,其对于以表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息为输入而从包括介入所述环境的介入行动的多个行动中选择并输出与所述机器人的状态对应的行动的机器人控制模型,将执行了所述介入行动的介入次数作为负的报酬对该机器人控制模型进行强化学习。
本公开的第三方式是机器人控制模型学习程序,其使计算机执行包括如下步骤的处理:学习步骤,对于以表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息为输入而从包括介入所述环境的介入行动的多个行动中选择并输出与所述机器人的状态对应的行动的机器人控制模型,将执行了所述介入行动的介入次数作为负的报酬对该机器人控制模型进行强化学习。
本公开的第四方式是机器人控制方法,其使计算机执行包括如下步骤的处理:取得步骤,取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;以及控制步骤,基于所述状态信息和通过机器人控制模型学习方法进行学习后的机器人控制模型,进行控制使得所述机器人移动到所述目的地。
本公开的第五方式是机器人控制装置,其包括:取得部,其取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;以及控制部,其基于所述状态信息和由机器人控制模型学习装置进行学习后的机器人控制模型,进行控制使得所述机器人移动到所述目的地。
本公开的第六方式是机器人控制程序,其使计算机执行包括如下步骤的处理:取得步骤,取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;以及控制步骤,基于所述状态信息和通过机器人控制模型学习方法进行学习后的机器人控制模型,进行控制使得所述机器人移动到所述目的地。
本公开的第七方式是机器人,其包括:取得部,其取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;自主行驶部,其使所述机器人自主行驶;以及控制部,其基于所述状态信息和由机器人控制模型学习装置进行学习后的机器人控制模型,进行控制使得所述机器人移动到所述目的地。
发明效果
根据本公开的技术,在动态环境中使机器人向目的地移动的情况下,能够减少机器人介入周围的环境的介入行动的次数。
附图说明
图1是表示机器人控制模型学习系统的概略结构的图。
图2是表示机器人控制模型学习装置的硬件结构的框图。
图3是表示机器人控制模型学习装置的功能结构的框图。
图4是表示机器人在人群中向目的地移动的情形的图。
图5是表示机器人控制模型学习装置的机器人控制模型学习处理的流程的流程图。
图6是表示机器人控制装置的功能结构的框图。
图7是表示机器人控制装置的硬件结构的框图。
图8是表示机器人控制装置的机器人控制处理的流程的流程图。
具体实施方式
以下,参照附图对本公开的技术的实施方式的一例进行说明。另外,在各附图中对相同或等效的构成要素及部分赋予相同的参照标号。另外,附图的尺寸比率有时为了便于说明而夸张,有时与实际的比率不同。
图1是表示机器人控制模型学习系统1的概略结构的图。
如图1所示,机器人控制模型学习系统1具备机器人控制模型学习装置10以及模拟器20。稍后将描述模拟器20。
接着,对机器人控制模型学习装置10进行说明。
图2是表示机器人控制模型学习装置10的硬件结构的框图。
如图2所示,机器人控制模型学习装置10具有CPU(Central Processing Unit:中央处理单元)11、ROM(Read Only Memory:只读存储器)12、RAM(Random Access Memory:随机存取存储器)13、存储装置14、输入部15、监视器16、光盘驱动装置17以及通信接口18。各结构经由总线19以能够相互通信的方式连接。
在本实施方式中,在存储装置14中存储有机器人控制模型学习程序。CPU 11是中央运算处理单元,执行各种程序,或者控制各结构。即,CPU 11从存储装置14读出程序,将RAM 13作为作业区域执行程序。CPU 11按照记录在存储装置14中的程序,进行上述各结构的控制以及各种运算处理。
ROM 12存储各种程序以及各种数据。RAM 13作为作业区域暂时存储程序或数据。存储装置14由HDD(Hard Disk Drive:硬盘驱动器)或者SSD(Solid State Drive:固态驱动器)构成,存储包括操作系统在内的各种程序以及各种数据。
输入部15包括键盘151和鼠标152等指示设备,用于进行各种输入。监视器16例如是液晶显示器,显示各种信息。监视器16也可以采用触摸面板方式,作为输入部15发挥功能。光盘驱动装置17进行存储在各种记录介质(CD-ROM或蓝光光盘等)中的数据的读入、对记录介质写入数据等。
通信接口18是用于与模拟器20等其他设备进行通信的接口,例如使用以太网(注册商标)、FDDI或Wi-Fi(注册商标)等标准。
接着,对机器人控制模型学习装置10的功能结构进行说明。
图3是表示机器人控制模型学习装置10的功能结构的例子的框图。
如图3所示,机器人控制模型学习装置10具有状态价值计算部30和行动选择部32作为功能结构。各功能结构是通过CPU 11读出存储在存储装置14中的机器人控制程序并在RAM 13中展开并执行来实现的。另外,状态价值计算部30和行动选择部32是学习部的一例。
在本实施方式中,对通过基于价值(Value-Based)的深度强化学习来学习后述的状态价值函数的情况进行说明。
状态价值计算部30从模拟器20取得状态信息。模拟器20具有对在例如如图4所示那样自主行驶型的机器人RB向目的地pg移动的情况下存在于机器人RB的周围的人HB等那样、包括移动的物体的动态环境进行模拟的功能。模拟器20将与机器人RB的状态以及机器人RB的周围的环境有关的状态信息输出到状态价值计算部30。
在此,状态信息包括与机器人RB的状态有关的机器人信息、与机器人RB的周围环境有关的环境信息、以及与机器人RB应该到达的目的地有关的目的地信息。
机器人信息包括机器人RB的位置及速度的信息。在本实施方式中,如以下那样用二维坐标系中的矢量来表示机器人RB的速度v。
v={vx、vy}
另外,在本实施方式中,如以下那样用二维坐标系中的坐标来表示机器人RB的位置p。
p={px、py}
在本实施方式中,如下表示时刻t的机器人RB的状态st
st={px、py、vx、vy、rb}
在此,rb表示机器人RB的影响半径。如后所述,影响半径rb在判定机器人RB与机器人RB以外的其他物体是否碰撞时使用。
环境信息包括与动态环境有关的信息,具体而言,例如包括存在于机器人RB的周围的人HB等移动的物体的位置及速度的信息。在本实施方式中,对环境信息是与人HB有关的信息的情况进行说明。
在本实施方式中,如下那样表示如图4所示那样机器人RB的周围的人HB的状态st。另外,在本实施方式中,为了方便,在数学式等中,在标记“(波浪号)”、“^(帽号)”的记号附加在字符之上的字符的情况下,有时将该记号标记在字符之前。
Figure BDA0003627166960000061
在此,N是存在于周围的人HB的数量。并且,st 1st 2、…st N表示各人HB的t时刻的状态、即位置及速度。
另外,在本实施方式中,如下那样表示将时刻t的机器人RB的状态st以及存在于机器人RB的周围的人HB的状态st结合的状态
Figure BDA0003627166960000062
Figure BDA0003627166960000063
目的地信息包括目的地pg的位置信息。目的地的位置pg如以下那样用二维坐标系中的坐标来表示。
pg={pgx、pgy}
状态价值计算部30基于所取得的状态信息,使用报酬函数R(sjn、a)来计算报酬r。在此,a表示行动,包括机器人RB的移动方向、移动速度、介入行动及回避行动中的至少1个。而且,以机器人RB到达目的地pg为止的到达时间、作为执行介入行动的次数的介入次数、以及机器人RB回避碰撞的回避次数变小的方式给出报酬r。
在此,介入行动是指为了使机器人RB不停止地移动而对周围的人HB通知机器人RB的存在的行动。具体而言,是语音输出“请让路”等消息、或鸣响警告音等行动,但介入行动不限于此。另外,回避行动是指机器人RB回避与其他物体的碰撞的行动,是指以能够避开其他物体的方向及速度进行移动的行动。
在本实施方式中,如下那样设定报酬函数R(sjn、a)。另外,以下有时简称为报酬函数R。
R(sjn,a)=αre+βrc
在此,re是从环境得到的报酬,rc是介入的影响报酬。此外,α是报酬re的权重,β是报酬rc的权重,被设定为任意的值。如下那样表示报酬re、报酬rc
Figure BDA0003627166960000071
Figure BDA0003627166960000072
在此,d是为了判定机器人RB与人HB是否碰撞而使用的距离,由下式表示。
d=D-(rb+rh)
D表示机器人RB与人HB的距离。rb是上述的机器人RB的影响半径,rh是人HB的影响半径。另外,既可以设为rb=rh,也可以设为rb≠rh。在d小于0的情况下,表示机器人RB的影响半径rb内的区域与人HB的影响半径rh内的区域一部分重叠的状态、即机器人RB与人HB接近的状态。在本实施方式中,在d小于0的情况下,视为机器人RB与人HB碰撞。
另外,bt是表示在时刻t机器人RB是否对周围的环境进行了介入行动的介入参数。在介入参数bt为“0”的情况下,表示未进行介入行动。另一方面,在介入参数为“0”以外的值的情况下,表示机器人RB进行了介入行动。
如上述所示,报酬re在距离d小于0、即视为机器人RB与人HB碰撞了的情况下为“εc”。
另外,在机器人RB的位置p到达目的地pg的情况下,报酬re成为“εg”。这里,报酬εg可取的值的范围是0≤εg≤1。并且,报酬εg以到达目的地pg为止的到达时间越迟则成为越小的值的方式、即越接近“0”的方式给出。另外,报酬εg以到达目的地pg为止的到达时间越早则成为越大的值的方式、即越接近“1”的方式给出。
另外,报酬re在上述以外的情况下为“0”。
另外,在介入参数bt为“0”以外的值的情况下,报酬rc为“εb”。即,εb可以说是与介入行动有关的报酬。另外,在介入参数bt为“0”的情况下,报酬rc为“0”。
在此,εc、εb作为负的报酬而设定为小于0的值、即负值。即,εc可以说是与回避碰撞有关的报酬,εb可以说是与介入行动有关的报酬。另外,也可以用距离d的函数来表示εc。另外,也可以用介入参数bt的函数来表示εb
另外,状态价值计算部30通过使用了状态价值函数
Figure BDA0003627166960000081
的下式来计算时刻t的状态的价值yt
Figure BDA0003627166960000082
在此,rt是通过报酬函数R计算出的时刻t的报酬。另外,Δt是1个步长中的时间的增加量。另外,γ是报酬的折扣率,如以下那样定义。
γ∈(0,1)
即,折扣率γ能够取0以上且1以下的值。另外,折扣率γ被设定为越是在远的将来得到的报酬则越被打折地评价的值。
状态价值函数
Figure BDA0003627166960000083
是表示在使用后述的策略函数π所选择的策略中机器人RB以及周围的人HB为状态sjn的价值的函数,由下式表示。在此,“*”表示最佳的函数,V*表示最佳的状态价值函数,π*表示最佳的策略函数。另外,以下有时简称为状态价值函数V。
Figure BDA0003627166960000084
上述(2)式表示状态价值函数
Figure BDA0003627166960000085
是对以折扣率γ打折后的、将来得到的报酬进行累积得到的折扣累积报酬和、即期待报酬。在本实施方式中,使用深度神经网络(Value-network)来近似状态价值函数V。以下,将表示状态价值函数V的深度神经网络称为V网络。
状态价值计算部30对V网络进行学习。在本实施方式中,作为一例,通过使用经验回放缓冲器(Experience reply buffer)的梯度下降法来学习V网络。即,在缓冲器E中存储状态Stjn、价值yt,从缓冲器E随机读出状态Stjn、价值yt的对,将读出的对作为教师数据来学习V网络。即更新V网络的参数。
行动选择部32基于状态价值计算部30计算出的状态的价值,选择机器人RB应该采取的行动at。行动at使用下述(3)式所示的策略函数
Figure BDA0003627166960000086
来选择。另外,以下有时简称为策略函数π。
Figure BDA0003627166960000091
这里,
Figure BDA0003627166960000092
表示选择了行动at的情况下的状态迁移概率。
行动选择部32将通过策略函数
Figure BDA0003627166960000093
选择的行动at输出到模拟器20。由此,模拟器20通过模拟使机器人RB执行行动at。例如,在行动at是以移动方向mt以及移动速度vt移动的情况下,模拟器20在模拟中以移动方向mt以及移动速度vt使机器人RB移动。另外,在行动at为介入行动的情况下,模拟器20对在执行了声音输出“请让路”等消息、或鸣响警告音等介入行动的情况下周围的人HB可能采取的回避行动进行模拟。通过这样,机器人RB执行行动at,机器人RB的状态st以及周围的人HB的状态st也变化。而且,对于变化后的状态,与上述同样地,通过反复进行报酬r的计算、状态价值V的计算、行动a的选择以及执行、V网络的参数更新的处理,来学习V网络。
这样,机器人控制模型学习装置10在功能上可以说是输入状态信息而选择并输出与输入的状态信息对应的行动的机器人控制模型。
接着,对机器人控制模型学习装置10的作用进行说明。
图5是表示机器人控制模型学习装置10的机器人控制模型学习处理的流程的流程图。CPU 11从存储装置14读出机器人控制模型学习程序,在RAM 13中展开并执行,由此进行机器人控制模型学习处理。
在步骤S100中,CPU 11作为状态价值计算部30,从模拟器20取得目的地pg的位置信息。
在步骤S102中,CPU 11作为状态价值计算部30,对状态价值函数V进行初始化。即,对V网络的参数进行初始化。
在步骤S104中,CPU 11作为状态价值计算部30,对机器人RB的状态st进行初始化。
在步骤S106中,CPU 11作为状态价值计算部30,对周围的人HB的状态st进行初始化。
在步骤S108中,CPU 11作为行动选择部32,设定机器人RB最初采取的行动a,将设定的行动a输出到模拟器20,由此使机器人RB执行行动a。由此,模拟器20在模拟中执行行动a。
在步骤S110中,CPU 11作为状态价值计算部30,从模拟器20取得机器人RB的状态st
在步骤S112中,CPU 11作为状态价值计算部30,从模拟器20取得周围的人HB的状态st
在步骤S114中,CPU 11作为状态价值计算部30,基于从模拟器20取得的机器人RB和周围的人HB的状态
Figure BDA0003627166960000101
和行动at,通过报酬函数R计算报酬rt
在步骤S116中,CPU 11作为状态价值计算部30,通过上述(1)式计算状态的价值yt
在步骤S118中,CPU 11作为行动选择部32,通过上述(3)式选择行动at,将所选择的行动at输出到模拟器20。由此,模拟器20在模拟中使机器人RB执行行动at
在步骤S120中,CPU 11作为状态价值计算部30,将机器人RB的状态
Figure BDA0003627166960000102
以及状态价值yt作为对而存储于缓冲器E。
在步骤S122中,CPU 11作为状态价值计算部30,对V网络的参数进行更新。即,对V网络进行学习。此时,随机地选择在缓冲器E中存储的过去的状态sjn以及状态价值y,将其作为教师数据来更新V网络的参数。即采用强化学习中的梯度下降法更新V网络的参数。另外,步骤S122的处理不是每次都执行而是多次中执行1次即可。
在步骤S124中,CPU 11作为状态价值计算部30,判定机器人RB是否到达目的地pg。即,判定机器人RB的位置p是否与目的地pg一致。然后,在判定为机器人RB到达目的地pg的情况下,转移至步骤S126。另一方面,在判定为机器人RB未到达目的地pg的情况下,转移至步骤S110,反复进行步骤S110~S124的处理直到判定为机器人RB到达目的地pg为止。即,对V网络进行学习。此外,步骤S110~S124的处理是学习步骤的一例。
在步骤S126中,CPU 11作为状态价值计算部30,判定是否满足结束学习的结束条件。在本实施方式中,结束条件是例如将机器人RB从开始地点到达目的地pg为止作为1回、结束了预先决定的数量(例如100)的回数的情况。CPU 11在判定为满足结束条件的情况下结束本例程。另一方面,在不满足结束条件的情况下,转移至步骤S100,改变目的地pg,重复步骤S100~S126为止的处理直至满足结束条件为止。
根据以上,在本实施方式中,通过报酬函数R计算出的报酬rt包括与回避碰撞有关的报酬εc以及与介入行动有关的报酬εb,这些报酬rt取负值作为负的报酬。通过使用这样的报酬函数R对V网络进行学习,能够减少机器人RB采取介入行动的介入次数以及回避碰撞的次数。由此,能够减少对周围的环境造成压力的情况,并且能够缩短机器人RB到达目的地pg为止的时间。
接着,对由通过机器人控制模型学习装置10进行学习后的机器人控制模型控制的机器人RB进行说明。
在图6中示出了机器人RB的概略结构。如图6所示,机器人RB具备机器人控制装置40、照相机42、机器人信息取得部44、通知部46以及自主行驶部48。机器人控制装置40具备状态信息取得部50以及控制部52。
照相机42在从开始地点移动到目的地pg的期间,以预先决定的间隔拍摄机器人RB的周围,将拍摄到的拍摄图像输出到机器人控制装置40的状态信息取得部50。
机器人信息取得部44取得机器人RB的状态st。即,取得机器人RB的位置以及速度。具体而言,机器人RB的位置p例如可以使用GPS(Global Positioning System:全球定位系统)装置来取得,也可以使用SLAM(Simultaneous Localization and Mapping:同步定位和地图构建)等公知的自身位置估计技术来取得。另外,机器人RB的速度例如使用速度传感器取得。
机器人信息取得部44将取得的机器人RB的状态st输出到状态信息取得部50。
状态信息取得部50基于照相机42拍摄的拍摄图像取得人HB的状态st。具体而言,使用公知的方法对拍摄图像进行分析,计算存在于机器人RB的周围的人HB的位置以及速度。
另外,例如通过通信从外部装置向状态信息取得部50输入目的地信息。
状态信息取得部50将包括所取得的目的地信息、机器人RB的状态st以及人HB的状态st的状态信息输出到控制部52。
控制部52具有由机器人控制模型学习装置10进行学习后的机器人控制模型的功能。即,V网络学习完毕的状态价值计算部30以及行动选择部32的功能。
控制部52选择与所输入的状态信息对应的行动,基于所选择的行动来控制通知部46以及自主行驶部48中的至少一方。
通知部46具有通过输出声音或输出警告音来向周围的人HB通知机器人RB的存在的功能。
自主行驶部48具有轮胎以及驱动轮胎的马达等使机器人RB自主行驶的功能。
控制部52在所选择的行动是以指定的方向以及速度使机器人RB移动的行动的情况下,控制自主行驶部48使机器人RB以指定的方向以及速度移动。
另外,控制部52在所选择的行动是介入行动的情况下,控制通知部46声音输出“请让路”等消息、或鸣响警告音。
接下来,对机器人控制装置40的硬件结构进行说明。
如图7所示,机器人控制装置40具有CPU(Central Processing Unit:中央处理单元)61、ROM(Read Only Memory:只读存储器)62、RAM(Random Access Memory:随机存取存储器)63、存储装置64以及通信接口65。各结构经由总线66以能够相互通信的方式连接。
在本实施方式中,在存储装置64中存储有机器人控制程序。CPU 61是中央运算处理单元,执行各种程序,或者控制各结构。即,CPU 61从存储装置64读出程序,将RAM 63作为作业区域执行程序。CPU 61按照记录在存储装置64中的程序,进行上述各结构的控制和各种运算处理。
ROM 62存储各种程序和各种数据。RAM 63作为作业区域暂时存储程序或数据。存储装置64由HDD(Hard Disk Drive:硬盘驱动器)或者SSD(Solid State Drive:固态驱动器)构成,存储包括操作系统在内的各种程序以及各种数据。
通信接口65是用于与其他设备进行通信的接口,例如使用以太网(注册商标)、FDDI或Wi-Fi(注册商标)等标准。
接着,对机器人控制装置40的作用进行说明。
图8是表示机器人控制装置40的机器人控制处理的流程的流程图。CPU 51从存储装置64读出机器人控制程序,在RAM 63中展开并执行,由此进行机器人控制处理。
在步骤S200中,CPU 61作为状态信息取得部50,通过通信从例如未图示的外部装置取得目的地pg的位置信息。
在步骤S202中,CPU 61作为状态信息取得部50,从机器人信息取得部44取得机器人RB的状态st
在步骤S204中,CPU 61作为状态价值计算部30,基于由照相机42拍摄到的拍摄图像,取得周围的人HB的状态st
在步骤S206中,CPU 61作为控制部52,基于从状态信息取得部50取得的机器人RB和周围的人HB的状态
Figure BDA0003627166960000131
和行动at,通过报酬函数R计算报酬rt
在步骤S208中,CPU 61作为控制部52,通过上述(1)式计算状态的价值yt
在步骤S210中,CPU 61作为控制部52,通过上述(3)式选择行动at,基于所选择的行动at来控制通知部46以及自主行驶部48中的至少一方。由此,机器人RB执行行动at
在步骤S212中,CPU 61作为控制部52,判定机器人RB是否到达目的地pg。即,判定机器人RB的位置p是否与目的地pg一致。然后,在判定为机器人RB到达目的地pg的情况下,结束本例程。另一方面,在判定为机器人RB未到达目的地pg的情况下,转移至步骤S202,反复进行步骤S202~S212的处理直到判定为机器人RB到达目的地pg为止。此外,步骤S202~S212的处理是控制步骤的一例。
这样,在本实施方式中,基于由机器人控制模型学习装置10进行学习后的机器人控制模型来控制机器人RB。由此,能够减少机器人RB采取介入行动的介入次数以及回避碰撞的次数。因此,能够减少对周围的环境造成压力的情况,并且能够缩短机器人RB到达目的地pg为止的时间。
另外,在本实施方式中,对学习状态价值函数V的情况进行了说明,但学习方法不限于此。例如,也可以代替学习状态价值函数V,而学习计算机器人RB的行动价值的行动价值函数Q(sjn、a)。
另外,在本实施方式中,作为报酬函数R输出的报酬,对包括与回避碰撞有关的报酬εc、与介入行动有关的报酬εb的情况进行了说明,但也可以不包括与回避碰撞有关的报酬εc
另外,在本实施方式中,对机器人RB具备照相机42的结构进行了说明,但不限于此。例如,也可以省略照相机42,从外部装置取得俯瞰机器人RB的俯瞰图像,通过分析取得的俯瞰图像来取得机器人RB的周围的人HB的状态st
另外,在本实施方式中,对机器人RB具备机器人控制装置40的情况进行了说明,但也可以将机器人控制装置40的功能设置于外部服务器。在该情况下,机器人RB将由照相机42拍摄到的拍摄图像以及由机器人信息取得部44取得的机器人信息发送给外部服务器,执行从外部服务器指示的行动。
另外,也可以由CPU以外的各种处理器执行在上述各实施方式中CPU读入软件(程序)而执行的机器人控制处理。作为该情况下的处理器,例示FPGA(Field-ProgrammableGate Array:现场可编程门阵列)等在制造后能够变更电路结构的PLD(ProgrammableLogic Device:可编程逻辑器件)、以及ASIC(Application Specific IntegratedCircuit:专用集成电路)等具有为了执行特定的处理而专门设计的电路结构的处理器即专用电路等。另外,既可以通过这些各种处理器中的1个来执行机器人控制模型学习处理以及机器人控制处理,也可以通过同种或者不同种的2个以上的处理器的组合(例如,多个FPGA、以及CPU与FPGA的组合等)来执行机器人控制模型学习处理以及机器人控制处理。另外,更具体而言,这些各种处理器的硬件结构是组合了半导体元件等电路元件的电路。
另外,在上述各实施方式中,说明了将机器人控制模型学习程序预先存储于存储装置14,将机器人控制程序预先存储于存储装置64的方式,但并不限于此。程序也可以以记录于CD-ROM(Compact Disc Read Only Memory:只读光盘存储器)、DVD-ROM(DigitalVersatile Disc Read Only Memory:数字多功能光盘只读存储器)、以及USB(UniversalSerial Bus:通用串行总线)存储器等记录介质的方式提供。另外,程序也可以设为经由网络从外部装置下载的方式。
关于本说明书中记载的所有文献、专利申请以及技术标准,以各个文献、专利申请以及技术标准的参照取入成为与具体且分别记载的情况相同的程度的方式在本说明书中通过参照而取入。
标号说明
10:机器人控制模型学习装置;20:模拟器;30:状态价值计算部;32:行动选择部;40:机器人控制装置;42:照相机;44:机器人信息取得部;46:通知部;48:自主行驶部;50:状态信息取得部;52:控制部;HB:人;RB:机器人。

Claims (10)

1.一种机器人控制模型学习方法,由计算机执行包括如下步骤的处理:
学习步骤,对于以表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息为输入而从包括介入所述环境的介入行动的多个行动中选择并输出与所述机器人的状态对应的行动的机器人控制模型,将执行了所述介入行动的介入次数作为负的报酬对该机器人控制模型进行强化学习。
2.根据权利要求1所述的机器人控制模型学习方法,其中,
所述行动包括所述机器人的移动方向、所述机器人的移动速度以及所述介入行动中的至少1个,
以使所述机器人到达所述目的地为止的到达时间以及所述介入次数中的至少一方变小的方式给出所述报酬。
3.根据权利要求1或2所述的机器人控制模型学习方法,其中,
所述行动包括回避所述机器人与其他物体碰撞的回避行动,
以使回避所述碰撞的回避次数变小的方式给出所述报酬。
4.根据权利要求1至3中的任一项所述的机器人控制模型学习方法,其中,
所述学习步骤通过对表示所述机器人的状态的状态价值函数进行更新来进行强化学习。
5.一种机器人控制模型学习装置,其包括:
学习部,其对于以表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息为输入而从包括介入所述环境的介入行动的多个行动中选择并输出与所述机器人的状态对应的行动的机器人控制模型,将执行了所述介入行动的介入次数作为负的报酬对该机器人控制模型进行强化学习。
6.一种机器人控制模型学习程序,该机器人控制模型学习程序用于使计算机执行包括如下步骤的处理:
学习步骤,对于以表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息为输入而从包括介入所述环境的介入行动的多个行动中选择并输出与所述机器人的状态对应的行动的机器人控制模型,将执行了所述介入行动的介入次数作为负的报酬对该机器人控制模型进行强化学习。
7.一种机器人控制方法,由计算机执行包括如下步骤的处理:
取得步骤,取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;以及
控制步骤,基于所述状态信息和通过权利要求1~4中的任一项所述的机器人控制模型学习方法进行学习后的机器人控制模型,控制所述机器人移动到所述目的地。
8.一种机器人控制装置,其包括:
取得部,其取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;以及
控制部,其基于所述状态信息和由权利要求5所述的机器人控制模型学习装置进行学习后的机器人控制模型,控制所述机器人移动到所述目的地。
9.一种机器人控制程序,该机器人控制程序用于使计算机执行包括如下步骤的处理:
取得步骤,取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;以及
控制步骤,基于所述状态信息和通过权利要求1~4中的任一项所述的机器人控制模型学习方法进行学习后的机器人控制模型,控制所述机器人移动到所述目的地。
10.一种机器人,其包括:
取得部,其取得表示在动态环境中自主行驶至目的地为止的机器人的状态的状态信息;
自主行驶部,其使所述机器人自主行驶;以及
控制部,其基于所述状态信息和由权利要求5所述的机器人控制模型学习装置进行学习后的机器人控制模型,控制所述机器人移动到所述目的地。
CN202080076868.3A 2019-11-13 2020-10-21 机器人控制模型学习方法、机器人控制模型学习装置、机器人控制模型学习程序、机器人控制方法、机器人控制装置、机器人控制程序以及机器人 Pending CN114667494A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019-205690 2019-11-13
JP2019205690A JP7400371B2 (ja) 2019-11-13 2019-11-13 ロボット制御モデル学習方法、ロボット制御モデル学習装置、ロボット制御モデル学習プログラム、ロボット制御方法、ロボット制御装置、ロボット制御プログラム、及びロボット
PCT/JP2020/039554 WO2021095464A1 (ja) 2019-11-13 2020-10-21 ロボット制御モデル学習方法、ロボット制御モデル学習装置、ロボット制御モデル学習プログラム、ロボット制御方法、ロボット制御装置、ロボット制御プログラム、及びロボット

Publications (1)

Publication Number Publication Date
CN114667494A true CN114667494A (zh) 2022-06-24

Family

ID=75898026

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080076868.3A Pending CN114667494A (zh) 2019-11-13 2020-10-21 机器人控制模型学习方法、机器人控制模型学习装置、机器人控制模型学习程序、机器人控制方法、机器人控制装置、机器人控制程序以及机器人

Country Status (5)

Country Link
US (1) US20220397900A1 (zh)
EP (1) EP4060446A4 (zh)
JP (1) JP7400371B2 (zh)
CN (1) CN114667494A (zh)
WO (1) WO2021095464A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7438510B2 (ja) 2021-10-29 2024-02-27 オムロン株式会社 俯瞰データ生成装置、俯瞰データ生成プログラム、俯瞰データ生成方法、及びロボット
JP7438515B2 (ja) 2022-03-15 2024-02-27 オムロン株式会社 俯瞰データ生成装置、学習装置、俯瞰データ生成プログラム、俯瞰データ生成方法、及びロボット
JP2024060341A (ja) * 2022-10-19 2024-05-02 株式会社日立製作所 プラント制御システム及びプラント制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5158097B2 (ja) * 2008-01-16 2013-03-06 日本電気株式会社 移動装置、移動装置の移動方法、及び移動装置の移動制御プログラム
DE112011103155T5 (de) * 2010-09-21 2013-07-18 Toyota Jidosha Kabushiki Kaisha Beweglicher Körper
JP5764795B2 (ja) * 2011-01-05 2015-08-19 株式会社国際電気通信基礎技術研究所 移動ロボット、移動ロボット用の学習システムおよび移動ロボットの行動学習方法
JP2012187698A (ja) * 2011-03-08 2012-10-04 Rota Kk 走行ロボットのやり直し走行、そのティーチング方法および制御方法
US10872379B1 (en) * 2016-04-11 2020-12-22 State Farm Mutual Automobile Insurance Company Collision risk-based engagement and disengagement of autonomous control of a vehicle
WO2018110305A1 (ja) * 2016-12-14 2018-06-21 ソニー株式会社 情報処理装置及び情報処理方法
JP6840363B2 (ja) * 2017-05-24 2021-03-10 日本電信電話株式会社 ネットワーク学習装置、行動決定装置、ネットワーク学習方法、及びプログラム
JP6839067B2 (ja) * 2017-11-22 2021-03-03 日本電信電話株式会社 移動体制御方法及び移動体制御装置
US11199853B1 (en) * 2018-07-11 2021-12-14 AI Incorporated Versatile mobile platform

Also Published As

Publication number Publication date
US20220397900A1 (en) 2022-12-15
JP7400371B2 (ja) 2023-12-19
EP4060446A4 (en) 2023-12-13
JP2021077286A (ja) 2021-05-20
WO2021095464A1 (ja) 2021-05-20
EP4060446A1 (en) 2022-09-21

Similar Documents

Publication Publication Date Title
WO2019124001A1 (ja) 移動体挙動予測装置および移動体挙動予測方法
CN114667494A (zh) 机器人控制模型学习方法、机器人控制模型学习装置、机器人控制模型学习程序、机器人控制方法、机器人控制装置、机器人控制程序以及机器人
KR102267316B1 (ko) 심층 강화 학습에 기반한 자율주행 에이전트의 학습 방법 및 시스템
Ulbrich et al. Probabilistic online POMDP decision making for lane changes in fully automated driving
Xia et al. Neural inverse reinforcement learning in autonomous navigation
EP3438953A1 (en) Information processing device
KR20210061461A (ko) 자율 차량 계획
KR102303126B1 (ko) 사용자 선호에 따른 강화학습 기반 자율주행 최적화 방법 및 시스템
KR102303432B1 (ko) 장애물의 특성을 고려한 dqn 및 slam 기반의 맵리스 내비게이션 시스템 및 그 처리 방법
González et al. High-speed highway scene prediction based on driver models learned from demonstrations
CN113253733B (zh) 一种基于学习和融合的导航避障方法、装置及系统
Herman et al. Inverse reinforcement learning of behavioral models for online-adapting navigation strategies
Sezer Intelligent decision making for overtaking maneuver using mixed observable Markov decision process
Akmandor et al. Deep reinforcement learning based robot navigation in dynamic environments using occupancy values of motion primitives
Trinh et al. Point-of-conflict prediction for pedestrian path-planning
CN114698388A (zh) 自身位置估计模型学习方法、自身位置估计模型学习装置、自身位置估计模型学习程序、自身位置估计方法、自身位置估计装置、自身位置估计程序以及机器人
CN113479219B (zh) 一种行车轨迹规划方法、装置、计算机设备和介质
CN115903773A (zh) 移动体控制装置、移动体、学习装置及方法、及存储介质
KR20230024392A (ko) 주행 의사 결정 방법 및 장치 및 칩
Chen et al. Social crowd navigation of a mobile robot based on human trajectory prediction and hybrid sensing
JP7459238B2 (ja) ユーザ選好による強化学習基盤の自律走行最適化方法およびシステム
Tao et al. Fast and Robust Training and Deployment of Deep Reinforcement Learning Based Navigation Policy
US20230082654A1 (en) System and method for inferring driving constraints from demonstrations
KR102617418B1 (ko) 센서 구성과 로봇 형태에 적응 가능한 강화학습 기반 자율주행 방법, 컴퓨터 시스템, 및 컴퓨터 프로그램
Chen et al. LiDAR-Based End-to-End Active SLAM Using Deep Reinforcement Learning in Large-Scale Environments

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