JP7180696B2 - 制御装置、制御方法およびプログラム - Google Patents
制御装置、制御方法およびプログラム Download PDFInfo
- Publication number
- JP7180696B2 JP7180696B2 JP2020569235A JP2020569235A JP7180696B2 JP 7180696 B2 JP7180696 B2 JP 7180696B2 JP 2020569235 A JP2020569235 A JP 2020569235A JP 2020569235 A JP2020569235 A JP 2020569235A JP 7180696 B2 JP7180696 B2 JP 7180696B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- command value
- value
- controlled
- controlled device
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 47
- 230000006870 function Effects 0.000 claims description 197
- 238000004364 calculation method Methods 0.000 claims description 78
- 238000010801 machine learning Methods 0.000 claims description 78
- 238000011156 evaluation Methods 0.000 claims description 39
- 238000004891 communication Methods 0.000 description 31
- 238000005457 optimization Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 16
- 239000013598 vector Substances 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 4
- 230000002787 reinforcement Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013400 design of experiment Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- NJPPVKZQTLUDBO-UHFFFAOYSA-N novaluron Chemical compound C1=C(Cl)C(OC(F)(F)C(OC(F)(F)F)F)=CC=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F NJPPVKZQTLUDBO-UHFFFAOYSA-N 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 239000013643 reference control Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000002123 temporal effect Effects 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/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- 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
- 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/34—Director, elements to supervisory
- G05B2219/34082—Learning, online reinforcement 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
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39001—Robot, manipulator control
-
- 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/40339—Avoid collision
-
- 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/40476—Collision, planning for collision free path
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Description
例えば、特許文献1に記載の強化学習装置では、強化学習を行う制御パラメータ値算出手段が算出する制御パラメータ値と、仮想外力発生器が算出する仮想外力との和の力ベクトルを制御対象に出力する。仮想外力発生器は、仮想外力の方向を、障害物の表面に対して垂直な方向とし、仮想外力の大きさを、制御対象と障害物との距離の3乗に比例して小さくなるように算出する。
図1は、第1実施形態に係る制御システムの装置構成の例を示す概略構成図である。図1に示す構成で、制御システム1は、情報取得装置100と、報酬値演算装置200と、制御装置300とを備える。
ここでいう所望の動作は、制御対象機器900に設定されている目標を達成する動作である。ここでいう接触することは、単に触れることに限定されず、ぶつかることを含む。制御対象機器900が障害物に接触することは、制御対象機器900の少なくとも一部分が、障害物の少なくとも一部分に接触することである。
あるいは、制御対象機器900が、無人搬送車またはドローンなどの移動体であってもよい。また、制御対象機器900が、制御指令値にて制御可能であれば、自律的に動作する装置であってもよい。
また、制御対象機器900自らも障害物として扱われていてもよい。例えば、制御対象機器900が垂直多関節ロボットであり、その姿勢によってはロボットアームと台座部分とが接触する場合、制御システム1が制御対象機器900を障害物として扱うことで、ロボットアームと台座部分との接触を回避し得る。
情報取得装置100が、制御対象機器900の位置情報をボクセルデータで送信するようにしてもよい。例えば、情報取得装置100が制御対象機器900の表面の位置情報をボクセルデータで送信することで、制御装置300は、1点ではなく制御対象機器900の表面と、障害物との位置関係を把握でき、制御対象機器900と障害物との距離をより正確に把握できる。制御対象機器900と障害物との距離をより正確に把握できることで、制御装置300は、制御対象機器900に障害物を回避させる制御をより高精度に行うことができる。あるいは、情報取得装置100が、制御対象機器900の位置情報として、制御対象機器900に設定されている代表点の座標を送信するようにしてもよい。
あるいは、情報取得装置100が、制御対象機器の関節の角速度など、制御対象機器のアクチュエータの動きを示す情報を送信するようにしてもよい。
制御対象機器900の位置情報と制御対象機器900の動きを示す情報とを総称して制御対象機器900の状態情報と称する。
情報取得装置100は、制御対象機器の状態情報を、報酬値演算装置200および制御装置300へ送信する。
障害物の位置情報、あるいは、障害物が動く場合の、障害物の位置情報と障害物の動きを示す情報との組み合わせを、障害物の状態情報と称する。
情報取得装置100は、障害物の状態情報を制御装置300へ送信する。
また、制御装置300は、制御対象機器900に対する制御を機械学習する。制御装置300は、報酬値演算装置200が算出する報酬値がより大きくなるように、制御対象機器900に対する制御を機械学習する。
第1通信部210は、他の装置と通信を行う。特に、第1通信部210は、情報取得装置100が送信する制御対象機器900の状態情報を受信する。また、第1通信部210は、報酬値演算部291が算出する報酬値を制御装置300へ送信する。
報酬関数記憶部281は、報酬関数を記憶する。
第1制御部290は、報酬値演算装置200の各部を制御して各種処理を実行する。第1制御部290の機能は、報酬値演算装置200が備えるCPU(Central Processing Unit、中央処理装置)が、第1記憶部280からプログラムを読み出して実行することで実行される。
報酬値演算部291は、報酬値を算出する。具体的には、報酬値演算部291は、報酬関数記憶部281が記憶する報酬関数に、第1通信部210が情報取得装置100から受信する制御対象機器900の状態情報を入力して報酬値を算出する。
干渉関数記憶部381は、干渉関数を記憶する。干渉関数は、制御対象機器900が障害物に接触することを防止するために用いられる関数であり、制御対象機器900と障害物との位置関係に応じた値を示す。干渉関数Bは、式(1)のような値をとる。
干渉関数値B(x)により、制御対象機器900が障害物に接触しているか否か、および、制御対象機器900と障害物との距離が示される。
ここでいう制御パラメータ値は、制御関数に含まれるパラメータの値である。制御パラメータ値は、機器制御部395が算出する制御指令値に反映される。
パラメータ値記憶部383は、制御パラメータ値を記憶する。
干渉関数演算部391は、干渉関数値を算出する。具体的には、干渉関数演算部391は、障害物の位置情報に基づいて干渉関数を生成し、干渉関数記憶部381に記憶させておく。そして、干渉関数演算部391は、干渉関数記憶部381が記憶する干渉関数に、第1通信部210が情報取得装置100から受信する制御対象機器900の状態情報および障害物の状態情報を入力して干渉関数値を算出する。
制御対象機器900が動作して制御対象機器900の位置が経時変化することで、干渉関数値B(x)も経時変化する。この場合、干渉関数演算部391は、干渉関数値B(x)の経時変化を示す値として、制御ステップ間における干渉関数値B(x)の変化量を算出する。
干渉関数演算部391は、今回の制御ステップから次回の制御ステップまでの間の、干渉関数値B(x)の変化量を予測する。制御ステップ間における干渉関数値の変化量をΔB(x,u)と表記する。干渉関数値B(x)の変化量は制御対象機器900の位置の変化に依存し、制御対象機器900の位置の変化は制御指令値uに依存するため、制御指令値uを明示している。
動的モデルが、将来の時点における制御対象機器900の予測位置の位置情報を出力するようにしてもよい。あるいは、動的モデルが、制御対象機器900の動作量を出力するようにしてもよい。すなわち、動的モデルが、制御対象機器900の将来の予測位置から現在位置を減算した差分を出力するようにしてもよい。
動的モデルは、制御指令値uの入力に対して、制御対象機器900の状態情報xで示される状態の微分値または差分が求まるモデルであり、例えば状態空間モデルであってもよい。
干渉関数演算部391が、動的モデルの演算で干渉関数値の変化量ΔB(x,u)を算出するようにしてもよい。あるいは、干渉関数演算部391が、式(2)を用いて干渉関数値の変化量ΔB(x,u)を近似的に算出するようにしてもよい。
あるいは、干渉関数演算部391が、動的モデルの演算で干渉関数値の変化量ΔB(x,u)を算出する方法と、式(2)を用いて干渉関数値の変化量ΔB(x,u)を近似的に算出する方法と使い分けるようにしてもよい。例えば、動的モデルの演算で干渉関数値の変化量ΔB(x,u)を算出できる場合は、干渉関数演算部391が、動的モデルの演算で干渉関数値の変化量ΔB(x,u)を算出するようにしてもよい。一方、動的モデルの演算で干渉関数値の変化量ΔB(x,u)を算出できない場合、干渉関数演算部391が、式(2)を用いて干渉関数値の変化量ΔB(x,u)を近似的に算出するようにしてもよい。
機器制御部395は、回避指令値演算部396にて回避指令値の算出を試みる。回避指令値の算出に成功した場合、機器制御部395は、得られた回避指令値を、第2通信部310を介して制御対象機器900へ送信する。一方、回避指令値を得られなかった場合、機器制御部395は、制御対象機器900を減速させる制御指令値を、第2通信部310を介して制御対象機器900へ送信する。
制御装置300が回避指令値を用いて制御対象機器900を制御することで、制御対象機器900が障害物に接触しないように制御できる。
γの値によって、制御対象機器900と障害物とが接触しないための、制御対象機器900と障害物との間隔の余裕分をどれだけ見込むか調整できる。
通常、制御対象機器900と障害物とは接触しておらず、B(x)が、制御対象機器900と障害物との距離を示す。制御対象機器900が障害物に接近してΔB(x,u)が負の値をとるとき、ΔB(x,u)の大きさがγB(x)以下である場合に式(3)が成り立つ。
複数の障害物が存在する場合、障害物毎に式(3)の制約条件を設けることができる。これにより、障害物回避制御装置400は、制御対象機器900が障害物全体に接触しないよう制御することができる。あるいは、複数の障害物をまとめたものに対して干渉関数を設計してもよい。
今回の制御ステップをtで示し、制御ステップtの次の制御ステップをt+1で示す。制御ステップtにおける干渉関数値をB(xt)と表記する。
制御ステップt+1における干渉関数値をB(xt+1)と表記する。B(xt+1)からB(xt)を減算した差分を、ΔB(xt,ut)と表記する。ΔB(xt,ut)は、式(4)のように示される。
全ての制御ステップで式(3)を満たすように最適化問題を解くことで、次の制御ステップだけではなく、次以降の全ての制御ステップで制御対象機器900が障害物と接触しないように制御できる。
識別番号iで識別される可動部分をi番目の可動部分と表記する。従って、uiは、i番目の可動部分に対する制御指令値である。
制御指令値uは、ui(i=1,2,・・・,N)を纏めてベクトルで表したものである。
「d」は、制約条件を緩和して解を得易くするために設けられている。
d=0として解を得られた場合、その解は、制御対象機器900に設定される目標を厳密に達成するための制御指令値である。一方、d=0の場合、解をピンポイントで探索することになり、解を得られないことが懸念される。
そこで、d≧0とすることで、制御指令値に基づく制御対象機器900の動作結果と目標とのずれを許容して、解の探索範囲を広げることができる。以下では、制御対象機器900の動作結果と目標とのずれを誤差と称する。「d」の値が大きくなるほど、許容する誤差が大きくなり、解を得易くなる。
ベクトルまたは行列に上付の「T」は、ベクトルまたは行列の転置を示す。
制御指令値を示すu*およびuのデータ形式は、同じ次元のベクトルであるとする。これらのベクトルの次元数は、制御装置300が制御対象機器900へ送信する制御指令値の次元数と同じとする。
この最適化問題の解の候補が2つ検出された場合、2つの解の候補の「uTu」の項の値が同じであれば、「p・d2」の項の値が小さい方が最適化として採用される。
式(9)は、評価関数の例に該当する。式(9)における最小解となる制御指令値uは、制御指令値を評価関数に適用した評価値が所定の終了条件を満たす制御指令値の例に該当する。
ここで、Wを正定なダイアゴナル行列として、リアプノフ関数Vは式(10)のように示される。
ここで、制御指令値u*は、式(11)のように示される。
また、上記の最適化演算でu*の算出に用いられるΔB(x,u)には、制御対象機器900の動的モデルを示しているといえる。このことから、機械学習部392は、ポリシーπをモデルベースで学習しているといえる。
パラメータ値更新部393が制御パラメータ値を探索する方法として、例えばベイズ最適化などの最適化ベースの方法、または、実験計画法など、公知の方法を用いることができる。
機械学習部392が行う機械学習で、制御対象機器900の動作のシミュレーションを併用することで、学習速度の向上を図るようにしてもよい。
このように、機械学習部392と回避指令値演算部396とが制御関数を共通で切り替えて使用することで、機械学習部392による機械学習の結果を制御パラメータ値だけでなく制御関数にも反映させることができる。これにより、機器制御部395による制御対象機器900の制御の安定化など、制御の向上を図ることができる。
情報取得装置100は、制御対象機器900のセンサのセンシングデータなど、制御対象機器900に関する観測データ、および、障害物950の撮像画像など障害物950に関する観測データを取得する。
制御装置300の干渉関数演算部391は、制御対象機器900の状態情報および障害物950の状態情報に基づいて、干渉関数値B(x)を算出する。
具体的には、干渉関数演算部391は、障害物950の状態情報に基づいて干渉関数を求め、第2記憶部380に記憶させておく。そして、干渉関数演算部391は、制御対象機器の状態情報xを干渉関数に入力して、干渉関数値を算出する。
干渉関数演算部391は、干渉関数値B(x)および干渉関数値の変化量ΔB(x、u)を、機器制御部395へ出力する。
制御装置300の機器制御部395は、機械学習部392が算出する制御パラメータ値を反映させた最適化問題を解くことで、制御対象機器900に対する制御指令値を算出する。機器制御部395は、算出した制御指令値を、第2通信部310を介して制御対象機器900へ送信する。
図5は、制御装置300が制御対象機器900に対する制御指令値を取得する処理手順の例を示すフローチャートである。制御装置300は、1回の制御ステップで図5のループを1回実行する。
図5の処理で、回避指令値演算部396は、機械学習部392が算出した制御パラメータ値を最適化問題に反映させる(ステップS111)。具体的には、回避指令値演算部396は、上記の式(10)で得られるリアプノフ関数を最適化問題に適用する。
解を得られたと判定した場合(ステップS113:YES)、回避指令値演算部396は、u=u*と算出する(ステップS121)。すなわち、回避指令値演算部396は、最適化問題を解いて得られた制御指令値を、制御対象機器900へ送信する制御指令値に決定する。
そして、第2通信部310が、制御指令値を制御対象機器900へ送信する(ステップS141)。
ステップS141の後、処理がステップS111へ戻る。
ステップS131の後、処理がステップS14へ進む。
図6の処理で、機械学習部392は、報酬値演算部291が算出する報酬値を取得する(ステップS211)。
次に、安定性判定部394は、ステップS212で得られたパラメータ値で制御が安定するか否かを判定する(ステップS213)。ステップS213での判定方法として、公知の判定方法を用いることができる。
制御が安定していないと安定性判定部394が判定した場合(ステップS213:NO)、処理がステップS212へ戻る。
αは、正の定数の閾値である。
学習終了条件が成立していないと機械学習部392が判定した場合(ステップS214:NO)、処理がステップS211へ戻る。
一方、学習終了条件が成立していると機械学習部392が判定した場合(ステップS214:YES)、制御装置300は図6の処理を終了する。
また、機械学習部392は、制御対象機器900の制御を学習する際、制御対象機器900と障害物との接触を考慮する必要が無い。制御装置300によれば、この点で、機械学習部392が解を探索する負荷が軽くて済み、解を求める処理の時間が比較的短くて済むと期待される。
制御装置300では、機械学習にてパラメータ値を更新することで目標達成の精度の向上が期待され、かつ、制御対象機器900が障害物に接触しないための条件により、機械学習が進んでいない段階でも、制御対象機器900が障害物に接触することを回避できると期待される。
このように、機械学習部392と回避指令値演算部396とが制御関数を共通で切り替えて使用することで、機械学習部392による機械学習の結果を制御パラメータ値だけでなく制御関数にも反映させることができる。これにより、機器制御部395による制御対象機器900の制御の安定化など、制御の向上を図ることができる。
第2実施形態では、制御装置が制御指令値の算出に用いる最適化問題のもう1つの例について説明する。
図7は、第2実施形態に係る制御装置300の機能構成の例を示す概略ブロック図である。図7に示す構成で、制御装置300は、第2通信部310と、第2記憶部380と、第2制御部390とを備える。第2記憶部380は、干渉関数記憶部381と、制御関数記憶部382と、パラメータ値記憶部383とを備える。第2制御部390は、干渉関数演算部391と、機械学習部392と、機器制御部395とを備える。機械学習部392は、パラメータ値更新部393と、安定性判定部394とを備える。機器制御部395は、回避指令値演算部396と、ノミナル(Nominal)指令値演算部397とを備える。
第2実施形態に係る制御システムは、上記の点以外は、第1実施形態の場合と同様である。第2実施形態に係る制御システムについて、第1実施形態の場合と同様の点の説明を省略し、必要に応じて図1に示す符号、および、図2に示す符号を引用する。
ノミナル指令値演算部397が算出するノミナル指令値は、回避指令値演算部396が、制御対象機器900に対して指示する制御指令値(すなわち、実際に用いられる制御指令値)を取得するための基準となる制御指令値として用いられる。
ノミナル指令値演算部397は、機械学習部392が算出する制御パラメータ値をノミナル関数に反映させ、反映後のノミナル関数を用いてノミナル指令値を算出する。
一方、回避指令値演算部396が制御指令値の算出に用いる最適化問題の評価関数は、第1実施形態の場合と異なり、式(13)のように示される。
上述したように、「argmin」は、引数の値を最小化する関数である。式(13)の場合、「argmin」は、引数「(u-ur)T(u-ur)」を最小化するような、uの値を関数値とする。
「ur」は、ノミナル指令値演算部397からのノミナル指令値を示す。
urのデータ形式は、上述したu*およびuの場合と同じ次元のベクトルであるとする。これらのベクトルの次元数は、制御装置300が制御対象機器900へ送信する制御指令値の次元数と同じとする。
それ以外の点については、図8の例は、図4の場合と同様である。
制御装置300では、この評価関数を用いることで、制御対象機器900に設定されている目的を制御対象機器900に実行させることができると期待される。そして、制御装置300では、評価関数のノミナル指令値にパラメータ値が反映されることで、機械学習部392の学習結果を制御指令値に反映させることができる。
図9は、第3実施形態に係る制御装置の構成の例を示す図である。図9に示す制御装置10は、機械学習部11と、回避指令値演算部12と、機器制御部13とを備える。
かかる構成で、機械学習部11は、制御対象機器の動作の制御を機械学習する。回避指令値演算部12は、回避指令値を求める。回避指令値は、制御対象機器に対する制御指令値であって、制御対象機器が障害物に接触しないための条件を含む制約条件を満たし、かつ、その制御指令値を評価関数に適用した評価値が所定の終了条件を満たす制御指令値である。機器制御部13は、回避指令値に基づいて、制御対象機器を制御する。また、機械学習部11の機械学習で得られるパラメータ値が、評価関数および制約条件のうち少なくとも何れか一方に反映される。
また、機械学習部11は、制御対象機器の制御を学習する際、制御対象機器と障害物との接触を考慮する必要が無い。制御装置10によれば、この点で、機械学習部11が解を探索する負荷が軽くて済み、解を求める処理の時間が比較的短くて済むと期待される。
図10は、第4実施形態に係る制御方法における処理の手順の例を示す図である。図10に示す制御方法では、制御対象機器の動作の制御を機械学習し(ステップS11)、制御対象機器に対する制御指令値であって、制御対象機器が障害物に接触しないための条件を含む制約条件を満たし、かつ、その制御指令値を評価関数に適用した評価値が所定の終了条件を満たす制御指令値である回避指令値を求め(ステップS12)、回避指令値に基づいて、制御対象機器を制御する(ステップS13)。また、ステップS11での機械学習で得られるパラメータ値が、評価関数および制約条件のうち少なくとも何れか一方に反映される。
また、ステップS11で、制御対象機器の制御を学習する際、制御対象機器と障害物との接触を考慮する必要が無い。この制御方法によれば、この点で、ステップS11で解を探索する負荷が軽くて済み、解を求める処理の時間が比較的短くて済むと期待される。
図20に示す構成で、コンピュータ700は、CPU710と、主記憶装置720と、補助記憶装置730と、インタフェース740とを備える。
上記の情報取得装置100、報酬値演算装置200、および、制御装置300のうち何れか1つ以上が、コンピュータ700に実装されてもよい。その場合、上述した各処理部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。また、CPU710は、プログラムに従って、上述した各記憶部に対応する記憶領域を主記憶装置720に確保する。各装置と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。
また、CPU710は、プログラムに従って、第1記憶部280に対応する記憶領域を主記憶装置720に確保する。第1通信部210が行う通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。
また、CPU710は、プログラムに従って、第2記憶部380およびその各部に対応する記憶領域を主記憶装置720に確保する。第2通信部310が行う通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。
「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
10、300 制御装置
11、392 機械学習部
12、396 回避指令値演算部
13、395 機器制御部
100 情報取得装置
200 報酬値演算装置
210 第1通信部
280 第1記憶部
281 報酬関数記憶部
290 第1制御部
291 報酬値演算部
310 第2通信部
380 第2記憶部
381 干渉関数記憶部
382 制御関数記憶部
383 パラメータ値記憶部
390 第2制御部
391 干渉関数演算部
393 パラメータ値更新部
394 安定性判定部
397 ノミナル指令値演算部
Claims (6)
- 制御対象機器の動作の制御を機械学習する機械学習部と、
前記制御対象機器に対する制御指令値であって、前記制御対象機器が障害物に接触しないための条件として、制御対象機器と障害物との距離を表す干渉関数値の所定時間当たりの予測変化量と、干渉関数値との条件を含む制約条件を満たし、かつ、その制御指令値を、制御対象機器に設定されている目的の実行についての評価関数に適用した評価値が、前記目的の実行可能性に関する所定の条件を満たす制御指令値である回避指令値を求める回避指令値演算部と、
前記回避指令値演算部が前記回避指令値の取得に成功したと判定した場合、前記回避指令値に基づいて、前記制御対象機器を制御し、前記回避指令値演算部が前記回避指令値の取得に失敗したと判定した場合、前記制御対象機器を減速させる機器制御部と、
を備え、
前記機械学習部の機械学習で得られるパラメータ値が、前記評価関数および前記制約条件のうち少なくとも何れか一方に反映される、
制御装置。 - 前記機械学習部によるパラメータ値の取得と、前記回避指令値演算部による回避指令値の取得とに共通で用いられる制御関数を複数記憶する制御関数記憶部をさらに備え、
前記機械学習部および前記回避指令値演算部は、前記制御関数記憶部が記憶する制御関数のうち何れかを共通で切り替えて使用する、
請求項1に記載の制御装置。 - 前記回避指令値演算部は、前記制御対象機器に設定された目標を達成するための条件であって、前記パラメータ値が反映された条件を含む前記制約条件を用いる、
請求項1または請求項2に記載の制御装置。 - 前記機械学習部は、前記回避指令値演算部が用いる前記評価関数に含まれるノミナル指令値を求めるための制御関数のパラメータ値を前記機械学習で取得する、
請求項1に記載の制御装置。 - 制御対象機器の動作の制御を機械学習する工程と、
前記制御対象機器に対する制御指令値であって、前記制御対象機器が障害物に接触しないための条件として、制御対象機器と障害物との距離を表す干渉関数値の所定時間当たりの予測変化量と、干渉関数値との条件を含む制約条件を満たし、かつ、その制御指令値を、制御対象機器に設定されている目的の実行についての評価関数に適用した評価値が、前記目的の実行可能性に関する所定の条件を満たす制御指令値である回避指令値を求める工程と、
前記回避指令値の取得に成功したと判定した場合、前記回避指令値に基づいて、前記制御対象機器を制御し、前記回避指令値の取得に失敗したと判定した場合、前記制御対象機器を減速させる工程と、
を含み、
前記機械学習する工程での機械学習で得られるパラメータ値が、前記評価関数および前記制約条件のうち少なくとも何れか一方に反映される、
制御方法。 - コンピュータに、
制御対象機器の動作の制御を機械学習する工程と、
前記制御対象機器に対する制御指令値であって、前記制御対象機器が障害物に接触しないための条件として、制御対象機器と障害物との距離を表す干渉関数値の所定時間当たりの予測変化量と、干渉関数値との条件を含む制約条件を満たし、かつ、その制御指令値を、制御対象機器に設定されている目的の実行についての評価関数に適用した評価値が、前記目的の実行可能性に関する所定の条件を満たす制御指令値である回避指令値を求める工程と、
前記回避指令値の取得に成功したと判定した場合、前記回避指令値に基づいて、前記制御対象機器を制御し、前記回避指令値の取得に失敗したと判定した場合、前記制御対象機器を減速させる工程と、
を実行させるためのプログラムであって、
前記機械学習する工程での機械学習で得られるパラメータ値が、前記評価関数および前記制約条件のうち少なくとも何れか一方に反映されるプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/003188 WO2020157863A1 (ja) | 2019-01-30 | 2019-01-30 | 制御装置、制御方法および記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020157863A1 JPWO2020157863A1 (ja) | 2021-11-11 |
JP7180696B2 true JP7180696B2 (ja) | 2022-11-30 |
Family
ID=71841469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020569235A Active JP7180696B2 (ja) | 2019-01-30 | 2019-01-30 | 制御装置、制御方法およびプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220105632A1 (ja) |
EP (1) | EP3920000A4 (ja) |
JP (1) | JP7180696B2 (ja) |
WO (1) | WO2020157863A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7088313B2 (ja) * | 2018-12-12 | 2022-06-21 | 日本電信電話株式会社 | マルチデバイス連携制御装置、マルチデバイス連携制御方法およびマルチデバイス連携制御プログラム |
WO2023013126A1 (ja) * | 2021-08-02 | 2023-02-09 | ソニーグループ株式会社 | 情報処理装置、学習モデル、及び情報処理方法 |
WO2024095651A1 (ja) * | 2022-11-01 | 2024-05-10 | 日本電気株式会社 | 制御装置、学習装置、制御方法、学習方法および記録媒体 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012208789A (ja) | 2011-03-30 | 2012-10-25 | Advanced Telecommunication Research Institute International | 強化学習装置、制御装置、および強化学習方法 |
JP2018190241A (ja) | 2017-05-09 | 2018-11-29 | オムロン株式会社 | タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6317651B1 (en) * | 1999-03-26 | 2001-11-13 | Kuka Development Laboratories, Inc. | Trajectory generation system |
US10065313B2 (en) * | 2016-12-07 | 2018-09-04 | Harris Corporation | Robot manipulator system |
WO2019010659A1 (en) * | 2017-07-13 | 2019-01-17 | Beijing Didi Infinity Technology And Development Co., Ltd. | SYSTEMS AND METHODS FOR TRACK DETERMINATION |
US11256983B2 (en) * | 2017-07-27 | 2022-02-22 | Waymo Llc | Neural networks for vehicle trajectory planning |
US20190318050A1 (en) * | 2018-04-11 | 2019-10-17 | Toyota Research Institute, Inc. | Environmental modification in autonomous simulation |
US11465279B2 (en) * | 2018-11-29 | 2022-10-11 | X Development Llc | Robot base position planning |
-
2019
- 2019-01-30 EP EP19912836.4A patent/EP3920000A4/en active Pending
- 2019-01-30 WO PCT/JP2019/003188 patent/WO2020157863A1/ja unknown
- 2019-01-30 US US17/426,270 patent/US20220105632A1/en active Pending
- 2019-01-30 JP JP2020569235A patent/JP7180696B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012208789A (ja) | 2011-03-30 | 2012-10-25 | Advanced Telecommunication Research Institute International | 強化学習装置、制御装置、および強化学習方法 |
JP2018190241A (ja) | 2017-05-09 | 2018-11-29 | オムロン株式会社 | タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3920000A4 (en) | 2022-01-26 |
WO2020157863A1 (ja) | 2020-08-06 |
EP3920000A1 (en) | 2021-12-08 |
JPWO2020157863A1 (ja) | 2021-11-11 |
US20220105632A1 (en) | 2022-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108873768B (zh) | 任务执行系统及方法、学习装置及方法、以及记录介质 | |
Hajiloo et al. | Robust online model predictive control for a constrained image-based visual servoing | |
Park et al. | ITOMP: Incremental trajectory optimization for real-time replanning in dynamic environments | |
JP7180696B2 (ja) | 制御装置、制御方法およびプログラム | |
US20210325894A1 (en) | Deep reinforcement learning-based techniques for end to end robot navigation | |
JP7180695B2 (ja) | 障害物回避制御装置、障害物回避制御システム、障害物回避制御方法およびプログラム | |
JP5750657B2 (ja) | 強化学習装置、制御装置、および強化学習方法 | |
Janabi-Sharifi et al. | Automatic selection of image features for visual servoing | |
CN114761966A (zh) | 用于以轨迹为中心的基于模型的强化学习的稳健优化的系统及方法 | |
EP3622439B1 (en) | Improvements related to generating a robot control policy from demonstrations collected via kinesthetic teaching of a robot | |
Ding et al. | Collision avoidance with proximity servoing for redundant serial robot manipulators | |
Dani et al. | Human-in-the-loop robot control for human-robot collaboration: Human intention estimation and safe trajectory tracking control for collaborative tasks | |
CN117270393B (zh) | 智能机器人集群协同控制系统 | |
Mohammad Hossein Fallah et al. | Conjugated visual predictive control for constrained visual servoing | |
US20230241770A1 (en) | Control device, control method and storage medium | |
Sadeghian et al. | Visual servoing with safe interaction using image moments | |
CN116576847A (zh) | 一种移动机器人的自动导航系统、导航方法、设备及介质 | |
JP6438354B2 (ja) | 自己位置推定装置及び自己位置推定装置を備えた移動体 | |
CN115488881A (zh) | 基于多运动技能先验的人机共享自治遥操作方法及系统 | |
Barnes et al. | Fuzzy control for active perceptual docking | |
Bis | Velocity occupancy space: autonomous navigation and dynamic obstacle avoidance with sensor and actuation error | |
Bis et al. | Velocity occupancy space for differential drive vehicles | |
Vochten et al. | Specification and control of human-robot handovers using constraint-based programming | |
US20220371203A1 (en) | Assistance for robot manipulation | |
US20240123627A1 (en) | Robot control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210707 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210707 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220222 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220425 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220802 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221003 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221018 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221031 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7180696 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |