TWI781708B - 學習裝置、學習方法、學習程式、控制裝置、控制方法及控制程式 - Google Patents
學習裝置、學習方法、學習程式、控制裝置、控制方法及控制程式 Download PDFInfo
- Publication number
- TWI781708B TWI781708B TW110128504A TW110128504A TWI781708B TW I781708 B TWI781708 B TW I781708B TW 110128504 A TW110128504 A TW 110128504A TW 110128504 A TW110128504 A TW 110128504A TW I781708 B TWI781708 B TW I781708B
- Authority
- TW
- Taiwan
- Prior art keywords
- state
- command
- control
- state transition
- series
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000007704 transition Effects 0.000 claims abstract description 158
- 230000008569 process Effects 0.000 claims abstract description 32
- 230000002776 aggregation Effects 0.000 claims abstract description 20
- 238000004220 aggregation Methods 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 23
- 238000004519 manufacturing process Methods 0.000 claims description 5
- 230000010354 integration Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 abstract 1
- 230000009471 action Effects 0.000 description 63
- 238000004364 calculation method Methods 0.000 description 41
- 238000010586 diagram Methods 0.000 description 10
- 238000003780 insertion Methods 0.000 description 9
- 230000037431 insertion Effects 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 8
- 210000000078 claw Anatomy 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 238000006073 displacement reaction Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000002787 reinforcement Effects 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000013526 transfer learning Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000004941 influx Effects 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 241000920033 Eugenes Species 0.000 description 1
- 241000282414 Homo sapiens Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 210000001145 finger joint Anatomy 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
-
- 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/40—Robotics, robotics mapping to robotics vision
- G05B2219/40499—Reinforcement learning algorithm
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Feedback Control In General (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
學習裝置包括:製作部,製作彙集狀態過渡模型,所述彙集狀態過渡模型包含基於所測量的機器人的狀態及對機器人的指令來預測機器人的後續狀態的狀態過渡模型、及彙集預測結果的彙集部;指令生成部,於每個控制週期執行下述各處理,即,輸入所測量的機器人的狀態,生成對機器人的指令的候補,獲取根據機器人的狀態及對機器人的指令的候補使用彙集狀態過渡模型20預測的、機器人的狀態,生成使與所獲取的狀態對應的報酬最大化的指令並輸出;以及學習部,以與輸出的指令對應地預測的機器人的後續狀態、和與後續狀態對應的機器人的經測量的狀態之間的誤差變小的方式,更新彙集狀態過渡模型。
Description
本揭示是有關於一種學習裝置、學習方法、學習程式、控制裝置、控制方法及控制程式。
於控制機器人(robot)的控制裝置中,若機器人可自律地獲得達成作業的控制規則,則可節省人製作行動計劃及控制裝置的勞力。
於利用通常的運動學習方法獲得控制規則的情形時,為了將機器人用於類似的其他作業,需要從白紙狀態開始重新學習。
針對所述問題,想到使用遷移學習,所述遷移學習使以往經學習的模型適應於其他區域。
然而,對實際的機器人直接適用通常的遷移學習不太現實。其原因在於,即便可謂遷移學習,學習時間亦變長,與伴隨機器人進行的組裝動作等接觸的作業有關的、學習結果的遷移困難等。
非專利文獻1中揭示有下述技術,即:藉由將表現控制規則的網路(network)結合從而再利用,藉此直接學習控制規則。
另外,非專利文獻2中揭示有下述技術,即:藉由實機學習來修正物體模型及投擲速度。再者,非專利文獻2所記載的技術並非物體間的學習完畢模型的轉用。
非專利文獻3中揭示有下述技術:即:利用神經網路(neutral net)來學習模型誤差。再者,非專利文獻3記載的技術中,並未考慮機器人的位置、角度、物體尺寸等與作業有關的大的變化。
非專利文獻1:“多極:各種環境動態間的遷移強化學習的多源策略集合(MULTIPOLAR:Multi-Source Policy Aggregation for Transfer Reinforcement Learning between Diverse Environmental Dynamics)”,28 Sep 2019,默罕默德明.布拉卡坦(Mohammadamin Barekatain)、米谷亮(Ryo Yonetani)、濱谷雅史(Masashi Hamaya),<URL:https://arxiv.org/abs/1909.13111>
非專利文獻2:“投擲機器人TossingBot:學習用殘差物理量投擲任意物體(TossingBot:Learning to Throw Arbitrary Objects with Residual Physics)”,27 Mar 2019,曾安迪(Andy Zeng),宋書然(Shuran Song),李強尼(Johnny Lee),阿爾韋托.羅德里格斯(Alberto Rodriguez),托馬斯.範豪舍(Thomas Funkhouser),<URL:https://arxiv.org/abs/1903.11239>
非專利文獻3:“用於機器人控制的殘差強化學習(Residual
Reinforcement Learning for Robot Control)”,7Dec 2018,托比亞斯.吉汗寧克(Tobias Johannink),西科汗.巴爾(Shikhar Bahl),阿莎維.尼爾(Ashvin Nair),羅劍蘭(Jianlan Luo),阿維娜莎.庫馬(Avinash Kumar),馬蒂耶斯.洛斯凱爾(Matthias Loskyll),娟.阿帕里奇奧.奧傑亞(Juan Aparicio Ojea),尤根.斯洛沃(Eugen Solowjow),謝爾蓋.萊文(Sergey Levine),<URL:https://arxiv.org/abs/1812.03201>
非專利文獻1所揭示的技術中,無模型強化學習(model-free reinforcement learning)需要長時間的訓練,因而有難以適用於實機等問題。
另外,非專利文獻2所揭示的技術中,將控制裝置及計劃設計成特定的作業專用,因而有難以轉用於新穎作業等問題。
另外,非專利文獻3所揭示的技術中,修正特定作業的模型化誤差,因而有難以轉用於新穎作業等問題。
本揭示是鑒於所述方面而成,其目的在於提供一種於機器人自律地獲得達成作業的控制規則時可於短時間學習的學習裝置、學習方法、學習程式、控制裝置、控制方法及控制程式。
揭示的第一態樣為一種學習裝置,包括:製作部,製作彙集狀態過渡模型,所述彙集狀態過渡模型包含多個狀態過渡模
型、及彙集由所述多個狀態過渡模型所得的預測結果的彙集部,所述多個狀態過渡模型基於所測量的控制對象的狀態及對所述控制對象的指令來預測所述控制對象的後續狀態;指令生成部,在每個控制週期執行下述各處理,即,輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出;以及學習部,以與輸出的所述指令對應地預測的所述控制對象的後續狀態、和與所述後續狀態對應的所述控制對象的經測量的狀態之間的誤差變小的方式,更新所述彙集狀態過渡模型。
所述第一態樣中,所述指令生成部亦可於每個所述控制週期,生成對所述控制對象的指令或指令系列的一個候補,算出基於所生成的候補的報酬,以進一步增大報酬的方式將指令或指令系列的候補更新一次以上,藉此生成所述指令或指令系列的候補。
所述第一態樣中,所述指令生成部亦可於每個所述控制週期,生成對所述控制對象的指令或指令系列的多個候補,然後獲取根據所述多個候補分別預測的所述控制對象的狀態或狀態系列。
所述第一態樣中,所述彙集狀態過渡模型亦可為下述結構,即:於所述彙集部中將所述多個狀態過渡模型的輸出按與各個所述輸出有關的彙集權重統一。
所述第一態樣中,所述學習部亦可更新所述彙集權重。
所述第一態樣中,所述彙集狀態過渡模型亦可與所述多個狀態過渡模型並列地包含誤差補償模型,所述學習部更新所述誤差補償模型。
揭示的第二態樣為一種學習方法,且電腦執行下述處理:製作彙集狀態過渡模型,所述彙集狀態過渡模型包含多個狀態過渡模型、及彙集由所述多個狀態過渡模型所得的預測結果的彙集部,所述多個狀態過渡模型基於所測量的控制對象的狀態及對所述控制對象的指令來預測所述控制對象的後續狀態;在每個控制週期執行下述各處理,即,輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出;以與所輸出的所述指令對應地預測的所述控制對象的後續狀態、和與所述後續狀態對應的所述控制對象的經測量的狀態之間的誤差變小的方式,更新所述彙集狀態過渡模型。
揭示的第三態樣為一種學習程式,使電腦執行下述處
理:製作彙集狀態過渡模型,所述彙集狀態過渡模型包含多個狀態過渡模型、及彙集由所述多個狀態過渡模型所得的預測結果的彙集部,所述多個狀態過渡模型基於所述測量的控制對象的狀態及對所述控制對象的指令來預測所述控制對象的後續狀態;在每個控制週期執行下述各處理,即,輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出;以與輸出的所述指令對應地預測的所述控制對象的後續狀態、和與所述後續狀態對應的所述控制對象的經測量的狀態之間的誤差變小的方式,更新所述彙集狀態過渡模型。
揭示的第四態樣為一種控制裝置,包括:記憶部,記憶由第一態樣的學習裝置所學習的彙集狀態過渡模型;以及指令生成部,在每個控制週期執行下述各處理,即,輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出。
揭示的第五態樣為一種控制方法,且電腦執行下述處理:從記憶由第一態樣的學習裝置所學習的彙集狀態過渡模型的記憶部中,獲取所述彙集狀態過渡模型;在每個控制週期執行下述各處理,即,輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出。
揭示的第六態樣為一種控制程式,使電腦執行下述處理,即:從記憶由第一態樣的學習裝置所學習的彙集狀態過渡模型的記憶部中,獲取所述彙集狀態過渡模型;在每個控制週期執行下述各處理,即,輸出所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出。
根據本揭示,於機器人自律地獲得達成作業的控制規則時,可於短時間學習。
1:機器人系統
10:機器人
11:臂
11a、51:臂前端
12:握爪
12a:夾持部
13:柔軟部
13a~13c:彈簧
20:彙集狀態過渡模型
30:狀態觀測感測器
31:已知模型群
32A、32B、32C、32D:狀態過渡模型
34:彙集部
36:誤差補償模型
40:學習裝置
40A:CPU
40B:ROM
40C:RAM
40D:儲存器
40E:鍵盤
40F:滑鼠
40G:監視器
40H:通訊介面
42:製作部
43:學習部
44:指令生成部
45:最適行動計算部
46:策略
52:握爪
53:柔軟部
54:栓釘
55:孔
56:狀態
57:行動
80:控制裝置
401:匯流排
C1~C6:旋轉方向
J1~J6:關節
n1~n5:基元(primitive)操作
S100~S110、S105A~S107A、S109A:步驟
y、z:方向
α:角度
圖1為學習階段(learning phase)的機器人系統的結構圖。
圖2(A)為表示機器人10的概略結構的圖,圖2(B)為將機器人的臂的前端側放大的圖。
圖3為表示學習裝置的硬體結構的區塊圖。
圖4為彙集狀態過渡模型的結構圖。
圖5為表示已知模型群的圖。
圖6為用以說明構成栓釘(peg)的嵌入作業的操作基元(primitive)(MP)的圖。
圖7為學習處理的流程圖。
圖8為表示學習處理的另一例的流程圖。
圖9為運用階段的機器人系統的結構圖。
以下,一方面參照圖式一方面對本揭示的實施形態的一例進行說明。再者,對各圖式中相同或等價的構成元件及部分賦予相同的參照符號。另外,圖式的尺寸比率有時為了方便說明而誇張,有時與實際的比率不同。
圖1表示學習階段的機器人系統的結構。學習階段中,機器人系統1具有機器人10、狀態觀測感測器30及學習裝置40。
(機器人)
圖2(A)、圖2(B)為表示作為控制對象的一例的機器人10的概略結構的圖。本實施形態的機器人10為六軸垂直多關
節機器人,於臂11的前端11a經由柔軟部13設有握爪(gripper,手(hand))12。機器人10進行藉由握爪12來握持零件(例如栓釘)並嵌入至孔的嵌入作業。
如圖2(A)所示,機器人10具有包括關節J1~J6的、六自由度的臂11。各關節J1~J6藉由未圖示的馬達將連桿(link)彼此以可沿箭頭C1~箭頭C6的方向旋轉的方式連接。此處,列舉垂直多關節機器人為例,但亦可為水平多關節機器人(選擇順應性裝配機械手臂(Selective Compliance Assembly Robot Arm,SCARA)機器人)。另外,列舉六軸機器人為例,但亦可為五軸或七軸等其他自由度的多關節機器人,亦可為平行連桿機器人(parallel link robot)。
握爪12具有一組夾持部12a,控制夾持部12a來夾持零件。握爪12經由柔軟部13而與臂11的前端11a連接,伴隨臂11的移動而移動。本實施形態中,柔軟部13包含三個彈簧13a~13c,此三個彈簧13a~13c配置成各彈簧的基部成為正三角形的各頂點的位置關係,但彈簧的個數亦可為若干個。另外,柔軟部13只要為針對位置的變動產生復原力而可獲得柔軟性的機構,則亦可為其他機構。例如,柔軟部13亦可為彈簧或橡膠般的彈性體、阻尼器(damper)、空氣壓或液壓缸等。柔軟部13較佳為包含被動元件。藉由柔軟部13,臂11的前端11a與握爪12以可於水平方向及垂直方向相對移動5mm以上、較佳為1cm以上、更佳為2cm以上的方式構成。
亦可設置握爪12相對於臂11而切換柔軟的狀態與經固定的狀態的機構。
另外,此處例示於臂11的前端11a與握爪12之間設置柔軟部13的結構,但亦可設於握爪12的中途(例如指關節的部位或指的柱狀部分的中途)、臂的中途(例如關節J1~J6的任一部位或臂的柱狀部分的中途)。另外,柔軟部13亦可設於該些中的多處。
機器人系統1使用機械學習(例如模型庫(model base)強化學習)來獲得模型,該模型用於進行如所述般包括柔軟部13的機器人10的控制。機器人10具有柔軟部13,因而即便使握持的零件接觸環境亦安全,另外,即便控制週期變慢亦可實現嵌入作業等。另一方面,握爪12及零件的位置因柔軟部13而變得不確定,因而難以獲得分析性控制模型。因此,本實施形態中使用機械學習來獲得控制模型。
若單純地進行控制模型的機械學習,則需要收集非常多的資料,學習耗費時間。因此,機器人系統1中,將於下文中詳述,學習將已學習完畢的多個狀態過渡模型彙集的、彙集狀態過渡模型20。即,將已學習完畢的多個狀態過渡模型作為遷移源的狀態過渡模型,藉由遷移學習來製作將該些彙集的彙集狀態過渡模型20。由此,與從頭開始學習狀態過渡模型的情形相比較,可於短時間學習。
(狀態觀測感測器)
狀態觀測感測器30觀測機器人10的狀態,輸出所觀測到的資料作為狀態觀測資料。作為狀態觀測感測器30,例如可使用機器人10的關節的編碼器、視覺感測器(攝像機(camera))、姿態捕捉(motion capture)、力相關感測器等。作為機器人10的狀態,可根據各關節的角度來確定臂11的前端11a的位置、姿勢,可根據視覺感測器及/或力相關感測器來推定零件(作業對象物)的姿勢。於將姿態捕捉用的標記(marker)安裝於握爪12的情形時,作為機器人10的狀態,可確定握爪12的位置、姿勢,可根據握爪12的位置、姿勢來推定零件(作業對象物)的姿勢。
所謂力相關感測器,為力感感測器及力矩感測器的總稱,進而於與零件接觸的部位設置感測器的情形時,為亦包含觸覺感測器的總稱。力相關感測器亦可設於握爪12握持零件的部分的表面、或握爪12內的關節部分,以檢測機器人10的握爪從零件承受的力。於握爪12與臂11之間為柔軟部的情形時,力相關感測器亦可設於握爪12與臂11之間,檢測作用於握爪12與臂11之間的力。力相關感測器例如為檢測一元件或多元件的一軸、三軸或六軸的力作為機器人10的狀態的感測器。藉由使用力相關感測器,可更高精度地掌握握爪12如何握持零件、即零件的姿勢,可進行適當的控制。
另外,亦可藉由視覺感測器來檢測握爪12自身或握爪12握持的零件的位置及姿勢作為機器人10的狀態。於握爪12與臂11之間為柔軟部的情形時,亦可藉由檢測握爪12相對於臂11
的位移的位移感測器來確定握爪12相對於臂11的位置、姿勢作為機器人10的狀態。
如此,可藉由各種感測器來檢測與柔軟部13、較柔軟部13更靠握持對象物的一側的機器人10的部位、及握持的零件的至少任一個有關的狀態,可獲取各種感測器的檢測結果作為狀態觀測資料。
(學習裝置)
學習裝置40使用機械學習來獲得機器人10的彙集狀態過渡模型20。
由學習裝置40獲得的彙集狀態過渡模型20搭載於控制機器人10的控制裝置,用於實際作業。所述控制裝置亦可具有學習功能,於該情形時亦可進行追加學習。
根據本適用例,機器人10具有柔軟部13,故而不進行複雜的力控制,容易使握爪12或對象物一邊接觸環境一邊進行動作。另外,亦可不大減速而使握爪或對象物接觸環境,故而可進行高速的作業。另外,藉由機械學習來獲得學習模型,故而可簡便地進行系統構建。
圖3為表示本實施形態的學習裝置的硬體結構的區塊圖。如圖3所示,學習裝置40為與一般的電腦(資訊處理裝置)相同的結構,具有中央處理單元(Central Processing Unit,CPU)40A、唯讀記憶體(Read Only Memory,ROM)40B、隨機存取記憶體(Random Access Memory,RAM)40C、儲存器(storage)
40D、鍵盤(keyboard)40E、滑鼠(mouse)40F、監視器(monitor)40G及通訊介面(通訊I/F)40H。各結構經由匯流排401而相互可通訊地連接。
本實施形態中,於ROM40B或儲存器40D,保存有用以執行學習模型的學習處理的、學習程式。CPU40A為中央運算處理單元,執行各種程式或控制各結構。即,CPU40A從ROM40B或儲存器40D讀出程式,將RAM40C作為作業區域執行程式。CPU40A按照記錄於ROM40B或儲存器40D的程式,進行所述各結構的控制及各種運算處理。ROM42保存各種程式及各種資料。RAM40C作為作業區域而暫時記憶程式或資料。儲存器40D包含硬碟驅動器(Hard Disk Drive,HDD)、固態驅動器(Solid State Drive,SSD)或快閃記憶體(flash memory),保存包含操作系統(operating system)的各種程式及各種資料。鍵盤40E及滑鼠40F為輸入裝置的一例,用於進行各種輸入。監視器40G例如為液晶顯示器,顯示用戶介面。監視器40G亦可採用觸控面板(touch panel)方式,作為輸入部發揮功能。通訊介面40H為用以與其他機器通訊的介面,例如可使用乙太網路(Ethernet,註冊商標)、光纖分佈式資料介面(Fiber Distributed Data Interface,FDDI)或無線相容(Wireless Fidelity,Wi-Fi,註冊商標)等標準。
繼而,對學習裝置40的功能結構加以說明。
如圖1所示,學習裝置40具有製作部42、學習部43及指令生成部44作為其功能結構。各功能結構是藉由下述方式實
現,即:CPU40A讀出記憶於ROM40B或儲存器40D的學習程式,於RAM40C展開並執行。再者,一部分或全部的功能亦可藉由專用的硬體裝置來實現。
製作部42製作彙集狀態過渡模型20。如圖4所示,彙集狀態過渡模型20包含:多個狀態過渡模型32,基於所測量的控制對象的機器人10的狀態及對機器人10的指令來預測機器人10的後續狀態並輸出;彙集部34,彙集及由多個狀態過渡模型32所得的預測結果;以及誤差補償模型36。
多個狀態過渡模型32為已學習完畢的狀態過渡模型,是由製作部42從圖5所示的已知模型群31所含的學習完畢的多個狀態過渡模型32中選擇。本實施形態中,對彙集狀態過渡模型20包含由製作部42所選擇的三個狀態過渡模型32A~32C的情形進行說明,但狀態過渡模型的個數不限於此,只要包含兩個以上的狀態過渡模型即可。製作部42將從已知模型群31中選擇的狀態過渡模型32A~狀態過渡模型32C、彙集部34、及誤差補償模型36組合而製作彙集狀態過渡模型20。再者,已知模型群31可記憶於學習裝置40內,亦可記憶於外部伺服器。
學習部43以與從指令生成部44輸出的指令對應地預測的機器人10的後續狀態、和與後續狀態對應的機器人10的經測量的狀態、即由狀態觀測感測器30所觀測到的狀態之間的誤差變小的方式,更新彙集狀態過渡模型20。
指令生成部44包括最適行動計算部45。最適行動計算
部45計算與機器人10的狀態相應的最適行動,將與所計算出的行動對應的指令輸出至機器人10。最適行動的計算時,可使用模型預測控制的方法。模型預測控制為利用控制對象的模型,於每個控制週期基於將來狀態的預測而求出報酬達到最大的最適指令值,使用該指令值來進行控制的方法。本實施形態中,作為控制對象的模型,使用彙集狀態過渡模型20。
具體而言,最適行動計算部45於每個控制週期,從狀態觀測感測器30獲取表示機器人10的狀態x(t)的資料。此處,將獲取的資料稱為狀態觀測資料。狀態觀測資料例如包含可確定握爪12或由握爪12握持的零件的位置及姿勢的資料。最適行動計算部45例如從包含關節的編碼器、視覺感測器(攝像機)、姿態捕捉、力相關感測器(力感感測器、力矩感測器、觸覺感測器)、位移感測器等的狀態觀測感測器30獲取狀態觀測資料。
另外,最適行動計算部45判定機器人10進行的動作是否滿足既定的成功條件。如後述,本實施形態中,例如將栓釘的嵌入作業等一個作業(技術)分割為多個基元操作(MP)進行學習。最適行動計算部45判定是否滿足對各MP規定的成功條件。成功條件的例子例如為:栓釘位於孔附近(非接觸),栓釘接觸孔附近的表面,栓釘的前端進入孔,栓釘進入孔且與孔平行,栓釘完全嵌入至孔中等。最適行動計算部45可基於狀態觀測資料來進行判定,亦可基於與狀態觀測資料不同的資料來進行判定。
另外,最適行動計算部45於每個控制週期執行下述各
處理,即:生成對作為控制對象的機器人10的指令的多個候補,獲取根據機器人10的狀態x(t)及對機器人10的指令的多個候補使用彙集狀態過渡模型預測的、機器人10的多個後續狀態x(t+1),算出與機器人10的多個後續狀態x(t+1)分別對應的報酬,基於其結果來生成使報酬最大化的指令並輸出。指令有時亦表現為行動u(t)。報酬例如為執行中的MP的完成狀態下的握爪12(或栓釘54)的狀態(目標狀態)與當前的握爪12(或栓釘54)的狀態之間的距離越小則越增大的報酬。亦可設定執行中的MP的握爪12(或栓釘54)的位置及姿勢的目標軌道,使用當前的握爪12(或栓釘54)的位置及姿勢與目標軌道的誤差越小則越增大的報酬。
最適行動計算部45亦可生成跨多個時步(time step)的指令系列的多個候補。於該情形時,最適行動計算部45亦可針對根據各指令系列的第二個以後的時步的指令的候補預測的機器人10的狀態算出對應的報酬後,針對指令系列的每個候補算出各時步的指令的報酬的總和,將所算出的總和作為與各指令系列的候補對應的報酬。或者,亦可將與各指令系列的候補的最後的指令對應的報酬作為與各指令系列的候補對應的報酬。最適行動計算部45亦能以下述方式生成指令系列,即:使與指令系列對應的報酬最大化。
即,最適行動計算部45於每個控制週期執行下述各處理,即:生成對作為控制對象的機器人10的指令或指令系列的多
個候補,獲取根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補使用所述彙集狀態過渡模型預測的、所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出。
最適行動計算部45亦可於每個控制週期,生成對作為控制對象的機器人10的指令或指令系列的一個候補,算出基於該候補的報酬,以進一步增大報酬的方式將指令或指令系列的候補更新一次以上,藉此生成指令或指令系列的多個候補。
最適行動計算部45亦可於每個控制週期,生成對作為控制對象的機器人10的指令或指令系列的多個候補,然後獲取根據多個候補分別預測的、機器人10的狀態或狀態系列。
再者,如圖1所示,本實施形態中,將包含最適行動計算部45及彙集狀態過渡模型20的結構稱為策略(policy)46。策略46是指接受所觀測的狀態並回以應做出的行動的存在(函數、映射、模組等),有時亦稱為方策、控制器。
狀態過渡模型32為下述模型,即:輸入狀態x(t)及此時的行動u(t),輸出行動後的後續狀態x(t+1)。最適行動計算部45輸入狀態x(t),生成應採取的行動u(t)。最適行動計算部45以使累計期待報酬最大化的方式生成應採取的行動(指令)u(t)。最適行動計算部45亦可學習用以生成應採取的行動u(t)的模型。最適行動計算部45基於所生成的行動u(t)而生成對機
器人10的指令並發送。
此處,對本實施形態中可利用的狀態觀測資料進行說明。狀態觀測資料的例子可列舉:握爪12的接觸對象物的部位的觸覺分佈(例如壓力分佈)的資料、由設於握爪12的夾持部12a的力感感測器所測定的力、從機器人10的關節的編碼器獲取的各關節的角度及角速度、施加於機器人10的關節的力矩、由安裝於機器人10的臂的視覺感測器所得的圖像、由力感感測器測定的機器人10的柔軟部13承受的力、由設於柔軟部13的位移感測器測定的夾持柔軟部13的部位之間的相對位移、由姿態捕捉所測定的握爪12的位置及姿勢。
根據來自關節編碼器的資料,可求出臂11的前端11a的位置、姿勢(角度)、速度、與姿勢變化有關的角速度。再者,只要可獲取各時刻的位置及姿勢(角度),則可獲取其時間變化(速度、角速度),故而以下亦省略提及可獲取時間變化。藉由來自視覺感測器的資料,可求出相對於臂11的握爪12及握持對象物的位置及姿勢。藉由來自力相關感測器的資料,亦可求出握爪12相對於臂11的位置及姿勢、或握持對象物相對於握爪12的位置及姿勢。
另外,於在握爪12安裝有姿態捕捉用的標記的情形時,僅藉由姿態捕捉資料便可獲取握爪12的位置及姿勢。握持對象物相對於臂的位置及姿勢亦可使用視覺感測器或力相關感測器而求出。另外,若於握持對象物安裝有標記,則亦可獲取握持對象物
的位置及姿勢。
(運動基元)
接下來,對運動基元進行說明。本實施形態中學習的栓釘的嵌入作業分割為多個動作區間,對各區間分別進行控制模型的學習。該動作區間分別為運動基元(Motion Primitive)。運動基元亦稱為MP、基元操作。
參照圖6,對構成本實施形態的栓釘的嵌入作業的MP進行說明。圖6中,51表示臂前端,52表示握爪,53表示柔軟部,54表示握持對象物(栓釘),55表示孔。圖6的符號56及符號57分別表示於各MP中考慮的狀態及行動。
整個栓釘嵌入作業的目標為將栓釘54插入至孔55。栓釘的嵌入作業分割為以下五個MP,若與各MP中指定的目標值的誤差成為臨限值以下,則過渡至下一MP。
n1:接近(approach)
n2:接觸(contact)
n3:適配(fit)
n4:對準(alignment)
n5:插入(insert)
「n1:接近」為使握爪52從任意的初始位置接近至孔55附近的動作。「n2:接觸」為使栓釘54接觸孔55附近的表面的動作。於能以固定模式與柔軟模式切換柔軟部53的情形時,於接觸前將柔軟部53切換為柔軟模式。「n3:適配」為保持栓釘54接觸
表面的狀態使栓釘54移動,使栓釘54的前端嵌合於孔55的前端的動作。「n4:對準」為保持栓釘54的前端嵌合於孔55並接觸的狀態,使栓釘54的姿勢與孔55平行(本例中為垂直)的動作。「n5:插入」為將栓釘54插入至孔55的底部為止的動作。
於「n1:接近」及「n2:接觸」、即栓釘54不接觸表面的MP中,只要藉由位置控制使栓釘54移動至目標位置即可。於「n3:適配」「n4:對準」「n5:插入」、即維持栓釘54接觸環境的狀態的MP(接觸基元操作)中,藉由基於機械學習的速度控制來控制握爪52及栓釘54的位置。接觸MP的機械學習中,藉由削減了狀態空間及行動空間的維度的學習處理來學習彙集狀態過渡模型20。
此處,設為於yz平面內進行握爪52及栓釘54的移動而進行說明。「n1:接近」MP中,輸入栓釘54的yz位置,進行yz面內的位置控制。「n2:接觸」MP中,輸入栓釘54的z位置,進行z方向的位置控制。
「n3:適配」MP中,因環境限制及臂的柔軟部53而可表現為不考慮z方向的模型。狀態可設為y方向的位置、速度,行動可設為y方向的速度指令。將栓釘54的前端嵌合於孔55時的握爪52的位置作為目標值。
「n4:對準」MP中,狀態為握爪52的角度及角速度,行動為y方向的速度指令。柔軟手腕可進行六自由度(於yz二維平面上為三自由度)的位移,故而於栓釘54的前端與孔接觸的狀
態下,僅藉由y方向的平移運動便可進行栓釘54的旋轉運動。將栓釘54的姿勢成為垂直時的握爪52的角度α作為目標值。
「n5:插入」MP中,狀態為z方向的位置及速度,行動為y方向及z方向的速度指令位置。y方向的速度指令是為了避免栓釘54的卡住(jamming,於插入中途不活動)而導入。將栓釘54到達孔55的底部時的握爪的位置作為目標位置。
(彙集狀態過渡模型)
如圖4所示,本實施形態中,作為一例,彙集狀態過渡模型20包含三個狀態過渡模型32A~32C、彙集部34及誤差補償模型36。
彙集狀態過渡模型20為於彙集部34中將狀態過渡模型32A~狀態過渡模型32C的輸出按與各輸出有關的彙集權重統一的結構。本實施形態中,彙集狀態過渡模型20為於彙集部34中,除了狀態過渡模型32A~狀態過渡模型32C以外,還將誤差補償模型36的輸出按與各輸出有關的彙集權重統一的結構。再者,統一的方法可為線性組合(linear combination),亦可使用多層感知機(Multilayer Perceptron,MLP)等進行非線性統一。另外,線性組合的情形時,亦可設為用戶可設定其權重的一部分。另外,誤差補償模型36為可學習(可更新)的模型,與統一參數同時進行學習(殘差學習(residual learning))。另外,於狀態過渡模型32A~狀態過渡模型32C可學習(可微分)的情形時,亦可與統一參數同時進行追加學習。
對狀態過渡模型32A~狀態過渡模型32C、誤差補償模型36輸入從最適行動計算部45輸出的指令。狀態過渡模型32A~狀態過渡模型32C、誤差補償模型36將與所輸入的指令對應的狀態輸出至彙集部34。彙集部34將所輸入的狀態彙集並輸出至最適行動計算部45及學習部43。
學習部43藉由更新彙集權重、即針對自狀態過渡模型32A~狀態過渡模型32C及誤差補償模型36各自的輸出的權重,從而學習彙集狀態過渡模型20。具體而言,學習部43算出由狀態觀測感測器30所測量的狀態、與自彙集部34輸出的經預測的狀態的誤差作為預測誤差,算出進一步減小預測誤差的彙集權重,將所算出的新的彙集權重設定於彙集部34,藉此更新彙集部34。
另外,彙集狀態過渡模型20與狀態過渡模型32A~狀態過渡模型32C並列地包含誤差補償模型36,學習部43算出進一步減小預測誤差的、誤差補償模型36的模型參數,將所算出的新的模型參數設定於誤差補償模型36,藉此更新誤差補償模型36。再者,本實施形態中,對彙集狀態過渡模型20包含誤差補償模型36的情形進行說明,但亦可設為不含誤差補償模型36的結構。
狀態過渡模型32A為於環境A已學習的狀態過渡模型。狀態過渡模型32B為於與環境A不同的環境B已學習的狀態過渡模型32。狀態過渡模型32C為於與環境A及環境B不同的環境C已學習的狀態過渡模型32。
此處,所謂不同的環境,是指機器人10執行目標作業的情形時的作業條件不同。作為不同環境的一例,可列舉機器人10操作的零件的種類不同。具體而言,例如有時機器人10操作的栓釘54的形狀、粗細度及長度的至少一個不同。另外,作為不同環境的一例,可列舉機器人10操作的零件的組裝對象的種類不同。具體而言,有時供插入栓釘54的孔55的位置、方向及形狀的至少一個不同。
如此,彙集狀態過渡模型20包含於各不相同的環境已學習的狀態過渡模型32A~狀態過渡模型32C。
(學習處理)
圖7為表示學習裝置40使用機械學習來學習彙集狀態過渡模型20的學習處理的流程的流程圖。圖7所示的流程圖為針對一個MP的學習處理,可適用與各MP有關的該學習處理。
步驟S100中,學習裝置40製作要使用的彙集狀態過渡模型20。即,製作部42從已知模型群31中選擇狀態過渡模型32A~狀態過渡模型32C,組合彙集部34及誤差補償模型36而製作彙集狀態過渡模型20。
以下說明的步驟S102~步驟S110的處理是按控制週期以一定的時間間隔執行。控制週期設定為可執行步驟S102~步驟S110的處理的時間。
步驟S101中,學習裝置40待機至開始前一次的控制週期後經過相當於控制週期的長度的既定時間為止。再者,亦可省
略步驟S101的處理,於前一控制週期的處理完成後立即開始下一控制週期的處理。
步驟S102中,學習裝置40獲取機器人10的狀態。即,從狀態觀測感測器30獲取機器人10的狀態觀測資料。具體而言,指令生成部44獲取由狀態觀測感測器30所觀測的握爪52的位置、速度、角度、角速度的資料作為狀態觀測資料。以下,將步驟S102中獲取的狀態稱為狀態A。
步驟S103中,學習裝置40判定步驟S102中獲取的狀態A是否充分滿足預定的結束條件。此處,所謂充分滿足結束條件的情形,例如為狀態A與目標狀態之差為規定值以內的情形。
於步驟S103的判定為肯定判定的情形時,結束本例程(routine)。另一方面,於步驟S103的判定為否定判定的情形時,進入步驟S104。
步驟S104中,學習裝置40以前一次的控制週期的步驟S110中使用彙集狀態過渡模型20所獲取的機器人10的預測的狀態C、與步驟S102中獲取的機器人10的實測的狀態A之間的誤差於今後變得更小的方式,更新彙集狀態過渡模型20。即,學習部43以與前一次的控制週期的步驟S110中輸出的指令B對應地預測的機器人10的後續狀態即狀態C、和與狀態C對應的機器人10的經測量的狀態A之間的誤差變小的方式,更新彙集權重。再者,於最初的控制週期中,跳過步驟S104的處理。
步驟S105中,生成對機器人10的指令或指令系列的一
個候補。具體而言,最適行動計算部45輸入步驟S102中測量的機器人10的狀態A,生成對機器人10的指令或指令系列的一個候補。以下,將對機器人10的指令或指令系列的一個候補稱為指令A。指令A的生成時,例如可使用牛頓法(Newton's method),但不限於此。再者,於最初的控制週期中,指令A是隨機生成。另外,第二個以後的控制週期中,藉由所生成的指令A來更新前一次的指令A。
步驟S106中,學習裝置40預測機器人10的狀態或狀態系列。即,最適行動計算部45將機器人10的狀態A、及對機器人10的指令A輸出至彙集狀態過渡模型20。藉此,彙集狀態過渡模型20預測與指令A對應的機器人10的後續狀態,將所預測的狀態或狀態系列輸出至最適行動計算部45。藉此,最適行動計算部45獲取所預測的狀態或狀態系列。以下,將所預測的狀態或狀態系列稱為狀態B。再者,最適行動計算部45中,於指令A為單獨的指令的情形時,獲取作為單獨狀態的狀態B,於指令A為指令的系列的情形時,獲取作為狀態的系列的狀態B。
步驟S107中,學習裝置40算出與狀態B對應的報酬。
步驟S108中,學習裝置40判定步驟S107中算出的報酬是否充分滿足規定條件。此處,所謂充分滿足規定條件的情形,例如為報酬超過規定值的情形、或執行了規定次數的步驟S105~步驟S108的處理循環的情形等。規定次數例如設定為10次、100次、1000次等。
繼而,於步驟S108的判定為肯定判定的情形時進入步驟S109,於步驟S108的判定為否定判定的情形時進入步驟S105。
步驟S109中,學習裝置40基於步驟S107中算出的與機器人10的狀態或狀態系列對應的報酬來生成指令B並輸出。再者,指令B可為報酬充分滿足規定條件時的指令A本身,亦可設為根據與指令A的變化對應的報酬的變化歷程預測的、可進一步使報酬最大化的指令。另外,於指令A為指令系列的情形時,基於指令系列中的最初的指令來決定指令B。
步驟S110中,學習裝置40預測機器人10的狀態或狀態系列。即,最適行動計算部45將機器人10的狀態A、及對機器人10的指令B輸出至彙集狀態過渡模型20。藉此,彙集狀態過渡模型20預測作為與指令B對應的機器人10的後續狀態的狀態C,並將所預測的狀態或狀態系列輸出至最適行動計算部45。藉此,最適行動計算部45獲取所預測的狀態或狀態系列。
如此,於每個控制週期重複步驟S101~步驟S110的處理。
(學習處理的另一例)
繼而,參照圖8所示的流程圖對學習處理的另一例進行說明。再者,對進行與圖7相同的處理的步驟標註相同符號,省略詳細的說明。
如圖8所示,步驟S105A~步驟S109A的處理與圖7所示的處理不同。
步驟S105A中,生成對機器人10的指令或指令系列的多個候補。具體而言,最適行動計算部45輸入步驟S102中測量的機器人10的狀態A,生成對機器人10的指令或指令系列的多個候補(指令A)。指令A的生成時,例如可使用交叉熵法(cross-entropy method,CEM),但不限於此。
步驟S106A中,學習裝置40預測機器人10的狀態或狀態系列。即,最適行動計算部45將機器人10的狀態A、及對機器人10的指令A輸出至彙集狀態過渡模型20。藉此,彙集狀態過渡模型20預測與對機器人10的指令或指令系列的多個候補的各候補對應的、機器人10的後續狀態,並將所預測的狀態或狀態系列輸出至最適行動計算部45。藉此,最適行動計算部45獲取針對各候補所預測的狀態或狀態系列(狀態B)。
步驟S107A中,學習裝置40算出與各狀態B對應的報酬。
步驟S109A中,學習裝置40基於步驟S107A中算出的、與機器人10的各狀態B分別對應的報酬,生成使報酬最大化的指令B並輸出。例如,算出表示與各狀態B對應的指令A和報酬的對應關係的關係式,將由所算出的關係式所表示的曲線上的、與最大報酬對應的指令作為指令B。藉此,可獲得使報酬最大化的指令。
(控制裝置)
圖9表示機器人系統1的運用階段的結構。運用階段
中,機器人系統1具有機器人10及控制裝置80。
控制裝置80的硬體結構與學習裝置40同樣,故而省略重複的說明。控制裝置80具有指令生成部44作為其功能結構。各功能結構是藉由下述方式實現,即:CPU40A讀出記憶於ROM40B或儲存器40D的控制程式,於RAM33展開並執行。再者,一部分或全部的功能亦可藉由專用的硬體裝置而實現。
指令生成部44包含最適行動計算部45及彙集狀態過渡模型20。彙集狀態過渡模型20記憶於作為記憶部的一例的RAM40C。再者,彙集狀態過渡模型20亦可記憶於儲存器40D,而非如RAM40C般暫時記憶的記憶部。另外,於彙集狀態過渡模型20記憶於外部伺服器的情形時,可自外部伺服器下載並暫時記憶於RAM40C,亦可記憶於儲存器40D。另外,亦可於學習裝置40進行學習時使用展開於RAM40C的狀態的彙集狀態過渡模型20。
最適行動計算部45使用藉由學習裝置40學習完畢的彙集狀態過渡模型20,生成與機器人10進行的動作對應的指令。圖9中的最適行動計算部45僅於使用學習完畢的彙集狀態過渡模型20的方面與圖1中的最適行動計算部45不同,故而省略此處的詳細說明。
指令生成部44於「適配」以後的接觸MP中判斷為滿足當前的MP的成功條件的情形時,切換為與接下來的MP對應的彙集狀態過渡模型20及生成應採取的行動(指令)u(t)的模型。
具體而言,於「適配」成功的情形時切換為與「對準」對應的彙集狀態過渡模型20,於「對準」成功的情形時切換為與「插入」對應的彙集狀態過渡模型20及生成應採取的行動(指令)u(t)的模型。於「插入」成功的情形時,判定為栓釘54的嵌入作業完成。
再者,於各MP中在預定的時步以內不滿足結束條件的情形、對機器人10施加了過度的力的情形、機器人到達指定區域外的情形時,中斷任務而回到初始狀態。
控制裝置80可為與學習裝置40分立的控制裝置,亦可為構成學習裝置40的一部分的控制裝置。例如,可將用於學習的學習裝置40直接用作控制裝置80,進行使用學習完畢的彙集狀態過渡模型20的控制。另外,控制裝置80亦可一邊繼續學習一邊進行控制。
如此,本實施形態中,使用已學習的狀態過渡模型32A~狀態過渡模型32C來學習新環境的彙集狀態過渡模型20,因而於機器人10自律地獲得達成作業的控制規則時,可於短時間學習。
<變形例>
所述實施形態僅對本揭示的結構例進行例示說明。本揭示不限定於所述具體形態,可於其技術思想的範圍內進行各種變形。
所述例中,以栓釘54的嵌入作業為例進行了說明,但學習及控制對象的作業可為任意作業。然而,本揭示適於包含握
爪52自身或握爪52握持的零件與環境接觸般的動作的作業。另外,所述例中,僅於握持對象物接觸環境的動作區間(MP)進行彙集狀態過渡模型20的學習,但亦可於握持對象物或握爪52不接觸環境的動作區間(MP)中亦進行彙集狀態過渡模型20的學習。另外,亦可不將作業分割為多個動作區間而進行彙集狀態過渡模型20的學習。即,亦可不將自接近至插入完成為止進行分割,而執行圖7或圖8的流程圖所示的處理。再者,該情形的報酬例如為插入完成狀態下的握爪12(或栓釘54)的狀態(目標狀態)與當前的握爪12(或栓釘54)的狀態之間的距離越小則越增大的報酬。該距離可使用三維空間內的直線距離、位置-姿勢的六維空間內的距離等。
再者,上述各實施形態中,亦可由CPU以外的各種處理器來執行CPU讀入軟體(程式)並執行的學習處理及控制處理。作為該情形的處理器,可例示:現場可程式閘陣列(Field-Programmable Gate Array,FPGA)等在製造後可變更電路結構的可程式邏輯器件(Programmable Logic Device,PLD)、及特殊應用積體電路(Application Specific Integrated Circuit,ASIC)等為了執行特定處理而具有專門設計的電路結構的處理器即專用電氣電路等。另外,可由該些各種處理器中的一個來執行學習處理及控制處理,亦可由同種或不同種的兩個以上的處理器的組合(例如多個FPGA、及CPU與FPGA的組合等)來執行執行學習處理及控制處理。另外,該些各種處理器的硬體結構更具體而言為
將半導體元件等電路元件組合而成的電氣電路。
另外,所述各實施形態中,對學習程式及控制程式預先記憶(安裝)於儲存器40D或ROM40B的態樣進行了說明,但不限定於此。程式亦能以記錄於唯讀光碟(Compact Disk Read Only Memory,CD-ROM)、唯讀數位光碟(Digital Versatile Disk Read Only Memory,DVD-ROM)、及通用串列匯流排(Universal Serial Bus,USB)記憶體等記錄媒體的形態提供。另外,程式亦可設為經由網路自外部裝置下載的形態。
再者,將日本專利申請案第2020-146401號的揭示的所有內容藉由參照併入至本說明書中。另外,本說明書中記載的所有文獻、專利申請案及技術規格是與具體且分別記載藉由參照將各文獻、專利申請案及技術規格併入的情形相同程度地,藉由參照而併入至本說明書中。
1:機器人系統
10:機器人
20:彙集狀態過渡模型
30:狀態觀測感測器
40:學習裝置
42:製作部
43:學習部
44:指令生成部
45:最適行動計算部
46:策略
Claims (11)
- 一種學習裝置,包括: 製作部,製作彙集狀態過渡模型,所述彙集狀態過渡模型包含多個狀態過渡模型、及彙集由所述多個狀態過渡模型所得的預測結果的彙集部,所述多個狀態過渡模型基於所測量的控制對象的狀態及對所述控制對象的指令來預測所述控制對象的後續狀態; 指令生成部,於每個控制週期執行下述各處理:輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出;以及 學習部,以與輸出的所述指令對應地預測的所述控制對象的後續狀態、和與所述後續狀態對應的所述控制對象的經測量的狀態之間的誤差變小的方式,更新所述彙集狀態過渡模型。
- 如請求項1所述的學習裝置,其中 所述指令生成部於每個所述控制週期,生成對所述控制對象的指令或指令系列的一個候補,算出基於所生成的候補的報酬,以進一步增大報酬的方式將指令或指令系列的候補更新一次以上,藉此生成所述指令或指令系列的候補。
- 如請求項1所述的學習裝置,其中 所述指令生成部於每個所述控制週期,生成對所述控制對象的指令或指令系列的多個候補,然後獲取根據所述多個候補分別預測的所述控制對象的狀態或狀態系列。
- 如請求項1所述的學習裝置,其中 所述彙集狀態過渡模型為於所述彙集部中將所述多個狀態過渡模型的輸出按與各所述輸出有關的彙集權重統一的結構。
- 如請求項4所述的學習裝置,其中 所述學習部更新所述彙集權重。
- 如請求項1至請求項5中任一項所述的學習裝置,其中 所述彙集狀態過渡模型與所述多個狀態過渡模型並列地包含誤差補償模型, 所述學習部更新所述誤差補償模型。
- 一種學習方法,由電腦執行下述處理: 製作彙集狀態過渡模型,所述彙集狀態過渡模型包含多個狀態過渡模型、及彙集由所述多個狀態過渡模型所得的預測結果的彙集部,所述多個狀態過渡模型基於所測量的控制對象的狀態及對所述控制對象的指令來預測所述控制對象的後續狀態; 於每個控制週期執行下述各處理:輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出; 以與輸出的所述指令對應地預測的所述控制對象的後續狀態、和與所述後續狀態對應的所述控制對象的經測量的狀態之間的誤差變小的方式,更新所述彙集狀態過渡模型。
- 一種學習程式,使電腦執行下述處理: 製作彙集狀態過渡模型,所述彙集狀態過渡模型包含多個狀態過渡模型、及彙集由所述多個狀態過渡模型所得的預測結果的彙集部,所述多個狀態過渡模型基於所測量的控制對象的狀態及對所述控制對象的指令來預測所述控制對象的後續狀態; 於每個控制週期執行下述各處理:輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出; 以與輸出的所述指令對應地預測的所述控制對象的後續狀態、和與所述後續狀態對應的所述控制對象的經測量的狀態之間的誤差變小的方式,更新所述彙集狀態過渡模型。
- 一種控制裝置,包括: 記憶部,記憶由如請求項1所述的學習裝置所學習的彙集狀態過渡模型;以及 指令生成部,於每個控制週期執行下述各處理:輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出。
- 一種控制方法,由電腦執行下述處理: 自記憶由如請求項1所述的學習裝置所學習的彙集狀態過渡模型的記憶部中,獲取所述彙集狀態過渡模型; 於每個控制週期執行下述各處理,輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出。
- 一種控制程式,使電腦執行下述處理: 自記憶由如請求項1所述的學習裝置所學習的彙集狀態過渡模型的記憶部中,獲取所述彙集狀態過渡模型; 於每個控制週期執行下述各處理:輸入所測量的所述控制對象的狀態,生成對所述控制對象的指令或指令系列的多個候補,根據所述控制對象的狀態及對所述控制對象的指令或指令系列的多個候補,獲取使用所述彙集狀態過渡模型預測的所述控制對象的多個狀態或狀態系列,算出與所述控制對象的多個狀態或狀態系列分別對應的報酬,基於所算出的報酬來生成使報酬最大化的指令並輸出。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020-146401 | 2020-08-31 | ||
JP2020146401A JP2022041294A (ja) | 2020-08-31 | 2020-08-31 | 学習装置、学習方法、学習プログラム、制御装置、制御方法、及び制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202211073A TW202211073A (zh) | 2022-03-16 |
TWI781708B true TWI781708B (zh) | 2022-10-21 |
Family
ID=80355053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110128504A TWI781708B (zh) | 2020-08-31 | 2021-08-03 | 學習裝置、學習方法、學習程式、控制裝置、控制方法及控制程式 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20240054393A1 (zh) |
EP (1) | EP4205916A1 (zh) |
JP (1) | JP2022041294A (zh) |
CN (1) | CN116194253A (zh) |
TW (1) | TWI781708B (zh) |
WO (1) | WO2022044615A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022162857A (ja) * | 2021-04-13 | 2022-10-25 | 株式会社デンソーウェーブ | 機械学習装置及びロボットシステム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005096068A (ja) * | 2003-08-25 | 2005-04-14 | Sony Corp | ロボット装置及びロボットの姿勢制御方法 |
JP2014066471A (ja) * | 2012-09-27 | 2014-04-17 | Daikin Ind Ltd | 空気調和装置 |
US20180218262A1 (en) * | 2017-01-31 | 2018-08-02 | Panasonic Intellectual Property Corporation Of America | Control device and control method |
CN111216126A (zh) * | 2019-12-27 | 2020-06-02 | 广东省智能制造研究所 | 基于多模态感知的足式机器人运动行为识别方法及系统 |
CN111310915A (zh) * | 2020-01-21 | 2020-06-19 | 浙江工业大学 | 一种面向强化学习的数据异常检测防御方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7127841B2 (ja) | 2019-03-15 | 2022-08-30 | 株式会社コナミアミューズメント | ゲーム機 |
-
2020
- 2020-08-31 JP JP2020146401A patent/JP2022041294A/ja active Pending
-
2021
- 2021-07-16 EP EP21861044.2A patent/EP4205916A1/en active Pending
- 2021-07-16 US US18/020,691 patent/US20240054393A1/en active Pending
- 2021-07-16 WO PCT/JP2021/026871 patent/WO2022044615A1/ja unknown
- 2021-07-16 CN CN202180058143.6A patent/CN116194253A/zh active Pending
- 2021-08-03 TW TW110128504A patent/TWI781708B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005096068A (ja) * | 2003-08-25 | 2005-04-14 | Sony Corp | ロボット装置及びロボットの姿勢制御方法 |
JP2014066471A (ja) * | 2012-09-27 | 2014-04-17 | Daikin Ind Ltd | 空気調和装置 |
US20180218262A1 (en) * | 2017-01-31 | 2018-08-02 | Panasonic Intellectual Property Corporation Of America | Control device and control method |
CN111216126A (zh) * | 2019-12-27 | 2020-06-02 | 广东省智能制造研究所 | 基于多模态感知的足式机器人运动行为识别方法及系统 |
CN111310915A (zh) * | 2020-01-21 | 2020-06-19 | 浙江工业大学 | 一种面向强化学习的数据异常检测防御方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2022044615A1 (ja) | 2022-03-03 |
US20240054393A1 (en) | 2024-02-15 |
CN116194253A (zh) | 2023-05-30 |
EP4205916A1 (en) | 2023-07-05 |
JP2022041294A (ja) | 2022-03-11 |
TW202211073A (zh) | 2022-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108883533B (zh) | 机器人控制 | |
Yoshikawa | Force control of robot manipulators | |
JP5330138B2 (ja) | 強化学習システム | |
Khalil et al. | Dexterous robotic manipulation of deformable objects with multi-sensory feedback-a review | |
TWI827907B (zh) | 機器人的控制裝置、控制方法、機器人及其系統、學習裝置、方法及電腦程式產品 | |
US20170249561A1 (en) | Robot learning via human-demonstration of tasks with force and position objectives | |
Kolev et al. | Physically consistent state estimation and system identification for contacts | |
WO2022208983A1 (en) | Simulation-in-the-loop tuning of robot parameters for system modeling and control | |
JP2022061022A (ja) | 力及びトルク誘導ロボット組立のための技術 | |
TWI781708B (zh) | 學習裝置、學習方法、學習程式、控制裝置、控制方法及控制程式 | |
Jha et al. | Imitation and supervised learning of compliance for robotic assembly | |
Heyn et al. | Application of artificial neural networks in force-controlled automated assembly of complex shaped deformable components | |
WO2022137581A1 (ja) | シミュレーション装置およびシミュレーションプログラム | |
CN113290553A (zh) | 轨迹生成装置、多连杆系统以及轨迹生成方法 | |
CN114080304B (zh) | 控制装置、控制方法及控制程序 | |
WO2022172812A1 (ja) | ロボットモデルの学習装置、ロボットモデルの機械学習方法、ロボットモデルの機械学習プログラム、ロボット制御装置、ロボット制御方法、及びロボット制御プログラム | |
Mishra et al. | Dynamic modelling of an elephant trunk like flexible bionic manipulator | |
JP7504398B2 (ja) | 軌道生成装置、軌道生成方法、及び軌道生成プログラム | |
JP2021035714A (ja) | 制御装置、制御方法、及び制御プログラム | |
WO2021149419A1 (ja) | シミュレーション装置およびシミュレーションプログラム | |
JP4715296B2 (ja) | ロボットハンドの持ち替え把持制御方法。 | |
TWI773308B (zh) | 控制裝置、機器人系統、機器人的控制方法以及程式 | |
Shauri et al. | Application of 6-axis force torque (F/T) sensor for a three fingered robot hand impedance control | |
Castuera et al. | Intelligent task level planning for robotic assembly: issues and experiments | |
Savić et al. | SVM Regression-Based Computed Torque Control of Humanoid Robot Reaching Task |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent |