JP2006110675A - ロボット制御方法及びプログラム - Google Patents

ロボット制御方法及びプログラム Download PDF

Info

Publication number
JP2006110675A
JP2006110675A JP2004300792A JP2004300792A JP2006110675A JP 2006110675 A JP2006110675 A JP 2006110675A JP 2004300792 A JP2004300792 A JP 2004300792A JP 2004300792 A JP2004300792 A JP 2004300792A JP 2006110675 A JP2006110675 A JP 2006110675A
Authority
JP
Japan
Prior art keywords
robot
input value
procedure
reference state
control
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
Application number
JP2004300792A
Other languages
English (en)
Other versions
JP4289501B2 (ja
Inventor
Hiroshi Kawano
洋 川野
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2004300792A priority Critical patent/JP4289501B2/ja
Publication of JP2006110675A publication Critical patent/JP2006110675A/ja
Application granted granted Critical
Publication of JP4289501B2 publication Critical patent/JP4289501B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】ロボット動作計画時の非参照状態変数の存在に伴うマルコフ性の欠如を補償し、時間的コスト及び計算機コストの削減を行うロボット制御方法及びプログラムを提供する。
【解決手段】外部指示により設定される指示入力値uに応じた興奮度uを興奮性神経素子11を用いて生成する興奮度生成手順と、この興奮度生成手順で生成された興奮度uに基づいて、非参照状態変数に関する非ホロノミックロボット20への制御入力値yを制御入力値設定部12を用いて設定する入力値設定手順と、この入力値設定手順で設定された制御入力値yに基づいて、興奮度生成手順で生成された興奮度uを漸減的に抑制する制御を、状態フィードバック値生成部13及び疲労性神経素子14を用いて行う興奮度抑制手順とを循環的に実施する。
【選択図】図1

Description

本発明は、ロボット制御方法及びプログラムに関し、詳しくは、コンピュータを用いて非ホロノミックなロボットの動作計画を行う際に、1以上の非参照状態変数が存在する場合でもロボットが適正に制御されるようにするロボット制御方法、及びその実施に直接使用されるロボット制御プログラムに係わる。
各種移動体として広く使用されている4輪自動車、航空機、船舶や、或いはマニピュレータ搭載型人工衛星などは、ロボット工学における制御の観点から見た場合には、制御入力数以上の運動自由度を得ることの可能な非ホロノミックなロボットであると言える。以下に、コンピュータにより制御される非ホロノミックロボットの例として、4輪車移動ロボット及び水平多関節ロボットを挙げて説明する。
図10は、非ホロノミック移動体としての4輪車移動ロボットの動作態様を示す図であり、図11は、非ホロノミックマニピュレータとしての水平多関節ロボットの構成図である。
図10に示す4輪車移動ロボット1は、構造的に真横方向への直接移動ができず、コンピュータ(図示せず)による前後進制御及び前輪方向制御の2つの制御入力から、2次元平面上における前後位置変位及び左右位置変位、並びに方向転回変位の3つの運動自由度を得ることが可能なものである。このため、4輪車移動ロボット1に、図示のように、動作開始点Sからその近傍の目標点Tに向けて、方向転回を伴う平面移動を行わせようとする場合には、その過程で、前後進動作を伴う切り返し動作を行わせる必要がある。
この場合、動作開始点S及び目標点Tとの間の各距離を各周回半径とする図示の第1及び第2の中心点O及びOを想定して、2つの円弧及び直線の各接点上に第1及び第2の切り返し点K1及びK2を設定することにより、これら円弧及び直線からなる軌道上を4輪車移動ロボット1に追従させる制御を行うことができる。この追従制御は、例えば、Aアルゴリズムなどのような決定論的なグラフ計算により行うことが可能とされるが、これは環境中に力学的外乱が存在しない場合に限られ、それが存在する場合には適用不可能となる。
一方、図11に示す水平多関節ロボット2は、水平可動要素として、上腕部3、下腕部4、及び手先部5を有し、水平関節要素として、基体6と上腕部3とを連結する肩関節部7と、上腕部3と下腕部4とを連結する肘関節部8と、下腕部4と手先部5とを連結する手首関節部9とを有して構成されたものである。ここで、肩関節部7及び手首関節部9にはアクチュエータ(図示せず。網掛けにて表示)が装備されるが、それが肘関節部8には装備されない場合、この種の水平多関節ロボット2を位置制御するには、下腕部4の慣性や肘関節部8の摩擦トルクなどを考慮した特殊な制御アルゴリズムが必要となる。
以上のような非ホロノミック特性をもつ移動体やマニピュレータの先端位置を、コンピュータを用いて随意に制御することは、ブロケット(Brockett)の定理から、状態フィードバック制御のみでは不可能であることが知られている。状態フィードバック制御とは、ロボットに対する制御入力量を、当該ロボットの位置変数のみを引数として記述した関数により決定する制御手法をいう(上記ブロケットの定理及び状態フィードバック制御の更なる詳細については、下記の非特許文献1を参照)。
中村仁彦、「非ホロノミックロボットシステム 第2回 幾何学的な非ホロノミック拘束の下での運動計画」、日本ロボット学会誌、Vol.11、No.5、p.655−662、1993年7月
上記状態フィードバック制御の不適用性のため、非ホロノミックなロボットの制御に際しては、制御入力量を記述する関数の引数に時間変数をもつものを利用するのが通常である。また、高い自由度を持つホロノミックなロボット(例えば、多くの関節を持つマニピュレータや蛇型ロボットなど)を、障害物が存在する環境内で行動させる場合にも、上記状態フィードバック制御に加え、時間変数を引数に持つ関数を併用することが必須となる。しかし、このような関数を制御理論的に決定することは一般に難しい。
ここで、上記時間変数を引数とした制御入力関数の決定には、動作計画の手法が有効であることが知られている。動作計画とは、グラフ理論を応用することにより、離散的なグラフの各ノード及びトランジッションを、それぞれロボットの位置及び動作に対応させてグラフ探索計算を行い、そのロボットが目標位置に到達可能な履歴を算出することである。このとき、ロボットの動作は、上記グラフ探索計算が可能となるよう、短い時間単位に区切られた(離散表現された)複数の動作要素に分解した状態で記述される。
上記動作計画に関し、図10に示した4輪車移動ロボット1では、そのための探索計算に際して、決定論的なグラフ計算が適用されることが多いが、これは、その4輪車移動ロボット1の動作要素が、円弧のように幾何学表現が可能なものであることを前提としたものである。しかし、現実の移動体では、ドリフト走行などの力学的外乱が生じることがあり、この外乱までも考慮した軌道を幾何学的に表現することは事実上困難であるため、上記決定論的なグラフ計算は現実的ではない。また、その外乱の程度が大きい場合に、円弧のような幾何学的形状からなる軌道上を追従制御させることも同様に困難である。このような場合、例えば動的計画法など、外乱の存在を考慮しうる確率論的な動作計画を適用するのが有効である。
また、図11に示した水平多関節ロボット2は、その機構内に、下腕部4の慣性や肘関節部8の摩擦トルクなどの不確定要素を含んでいるため、この場合にも、それら不確定要素を考慮しうる動作計画を適用するのが有効である。
ところで、以上のロボットの動作計画に際して動作要素を作成する上で重要なのは、その動作計画におけるグラフ探索計算が決定論的なものによる場合には、グラフ探索計算を行う状態空間で表現されるロボットの動作が決定性を持っているようにすることであり、これに対し、そのグラフ探索計算が確率論的なものによる場合には、表現されるロボットの動作がマルコフ性(詳細は後述)を満たしていることである。特に、ロボットの動作においては、センサの誤差や環境の持つ外乱などの不確定要素が多く存在するため、後者の条件を扱う方がより現実的であり、前者の条件を満たすことができるロボットは、既述のごとく、数学的な表現により純粋な力学的モデルが記述可能な一部のロボットに限られている。但し、何れの手法を適用する場合でも、グラフ理論における離散的な状態空間を利用するのが通常である。
なお、上述したマルコフ性とは、離散的な状態空間で表現された環境中において、ある状態にある行動主体(ロボット)が、同様にして離散的に表現されたある行動をとった場合に、その結果として観測される状態遷移の確率が、行動主体がそれまでたどってきた状態遷移の履歴によらず、それぞれの状態毎によってのみ決定される性質を言う(上記マルコフ性の更なる詳細については、下記の非特許文献2を参照)。
Hajime Kimura, Shigenobu Kobayashi,"Efficient Non-Linear Control by Combining Q-learning with Local Linear Controllers,"Proceedings of 16th International Conference on Machine Learning, pp. 210-219, June 1999.
ここで、ロボットの動作計画を実際に行う場合において、上述のマルコフ性を満たす状態空間を作成するには、ロボットの運動を支配すると考えられる位置、速度、加速度、負荷の大きさ、障害物の位置などのパラメータを状態変数として全て参照して、十分な解像度の離散的な空間を構成し、確率論的な要素として残るのが、センサ精度の限界とそれに伴って生じる環境の不確定性程度にとどめることが望ましい。しかし、ロボットは通常の機械に比べ運動の自由度が高いため、これに応じて、動作計画用の状態空間構成に必要な状態変数の数も自ずと多くなる。
このとき、状態変数の数が多い場合に顕著な問題となるのが、その数の増加に伴って指数関数的に増大する離散的状態数であり、このことは、グラフ探索計算にかかる時間的コストや、その計算に要するコンピュータのメモリ容量(計算機コスト)の指数関数的な増大をもたらす。特に、動的計画法のような確率論的な手法によりグラフ探索計算を行う場合、その計算に必要なマルコフ状態遷移モデルの獲得に必要な時間的コストは膨大なものとなる。また、動的計画法をベースとした強化学習においては、ロボットを実際の環境で動作させながら、そのマルコフ状態遷移モデルの獲得と確率論的なグラフ探索計算とを同時に行うものが多いが、こうした強化学習においても、離散的状態数の爆発的な増加は、その学習に要する時間的資源の爆発的な増加をまねく。これらの問題は、「状態空間爆発」又は「次元の呪い」として一般に知られている。
以上の問題から、実際のロボットの動作計画時には、本来参照すべき状態変数の参照を断念して、マルコフ性が満たされない状態空間を構成するか、或いは、参照すべき状態変数は全て参照しながらも、解像度の低い状態空間を使用することで、上記次元の呪いの問題を解こうとする手法の応用が試みられてきたが、前者はもちろん、後者においても、解像度が不十分であることから生じる非マルコフ性の問題が発生するケースが多かった(その適用例については、下記の非特許文献3を参照)。
Hiroshi Kawano, Tamaki Ura,"Motion Planning Algorithm for Non-Holonomic Autonomous Underwater Vehicle in Disturbance using Reinforcement Learning and Teaching Method,"Proceedings of IEEE/ASME International Conference on Robotics and Automation, pp. 4032-4038, May 2002.
また、解像度の低い状態空間と線形フィードバック制御則とを併用した動作計画を行う場合もあるが、こうした手法が、動作計画に使用される状態空間のマルコフ性を保証するという裏付はなく、未だ実用的な信頼を得られないのが現状である(例えば、前述の非特許文献2を参照)。
ここにおいて、本発明の解決すべき主要な目的は、次のとおりである。
即ち、本発明の第1の目的は、ロボットの動作計画を行うに際して1以上の非参照状態変数の存在に伴うマルコフ性の欠如を補償することの可能なロボット制御方法及びプログラムを提供せんとするものである。
本発明の第2の目的は、ロボットの動作計画時のグラフ探索計算に要する時間的コスト及び計算機コストを大幅に削減することの可能なロボット制御方法及びプログラムを提供せんとするものである。
本発明の他の目的は、明細書、図面、特に特許請求の範囲の各請求項の記載から、自ずと明らかとなろう。
本発明は、ロボットの動作計画を行う際に、動作計画用状態空間のマルコフ性を満たすために必要な状態変数が状態空間において参照されない場合でも、動作要素の開始時刻と終了時刻とにおいて、その状態変数の値が一定値に制御されていれば、所要のマルコフ性が十分に保たれ、かつ、そのような制御が、興奮性と疲労性とを持った神経素子モデルに対する状態変数のフィードバックを行って、その神経素子モデルの出力を用いてロボットの動作要素を構成することにより実現でき、また、場合により、そのような神経素子モデルによる制御と状態フィードバック制御アルゴリズムとが併用できることを、本願発明者が実験により見出したことに基づく。
このため、まず、本発明方法においては、コンピュータ内に設定された神経素子モデルが、ロボットの動作に関して事前に離散化表現された複数の動作要素の各継続時間毎に、(1)外部指示により設定される指示入力値に応じた興奮度を興奮性神経素子を用いて生成する興奮度生成手順と、(2)この興奮度生成手順で生成された興奮度に基づいて、非参照状態変数に関するロボットへの制御入力値を所定の関数を適用して設定する入力値設定手順と、(3)この入力値設定手順で設定された制御入力値に基づいて、興奮度生成手順で生成された興奮度を漸減的に抑制する制御を行う興奮度抑制手順とを循環的に実施する。以上の手順を採用することにより、本発明方法では、ロボットから各動作要素の終了時刻に出力される非参照状態変数の変位量が、当該各動作要素の開始時刻における当該変位量に収束するよう制御し、この制御により、1以上の非参照状態変数の存在に伴うマルコフ性の欠如を補償する。
また、本発明プログラムにおいては、上記本発明方法における(1)〜(3)の連続した手順を、所定の言語によりコンピュータ読み取り可能に記述して構成し、上記本発明方法の実施時には、同プログラムをコンピュータに導入して使用する。
以上のように、本発明によれば、ロボットから各動作要素の終了時刻に出力される非参照状態変数の変位量を、当該各動作要素の開始時刻における当該変位量に収束させるよう制御したことから、動的計画法のような確率論的なグラフ探索計算を適用する場合に、1以上の非参照状態変数の存在に伴うマルコフ性の欠如を補償することが可能となり、その結果、参照すべき状態変数の数を減少させることができるようになる。
これに伴い、本発明によれば、ロボットの動作計画時のグラフ探索計算に要する時間的コスト及び計算機コストを大幅に削減することが可能となり、これにより、その計算速度に対する要求の厳しさが大幅に緩和されるようになる。
以下、本発明の実施の形態につき、添付図面を参照しつつ、まず、その原理を図6〜図9に基づいて説明し、次いで、第1〜第4実施形態(図1〜図5)を順に挙げて説明する。
(原理)
図6(a)及び(b)は、それぞれ、本発明により構成される動作要素の各継続時間におけるロボットへの制御出力値の時間変化と、これに伴いロボットから出力される非参照状態変数の変位量の時間変化とを表す図である。
同図(b)に示すように、ロボット動作計画用の状態空間がマルコフ性を満たすために必要な拘束条件は、本願発明者の実験的検証によれば、「動作要素の開始時刻tと終了時刻tとにおいて、非参照状態変数の変位量xの値が等しく、かつ、その値が全ての動作要素において共通の値である」ことである。この拘束条件を満たしさえすれば、その他の時刻において非参照状態変数の変位量xのとる値に対する拘束はないが、同図に示すように、動作要素の開始時刻t付近では増加し、その終了時刻t付近で減少するようにすれば、その形態は最も簡易なものとなる。なお、その変化の仕方については、図示のように滑らかでなくともよい。
同図(a)に示す制御出力値yは、以上の拘束条件に即した非参照状態変数の変位量xを得るためにロボットに与えられるものであり、本発明では、この制御出力値yを所定のアルゴリズムを用いて生成する手法を提供する。
図7に、以上の拘束条件を満たす動作要素に基づく動作計画を非ホロノミック移動体としての水中航行ロボットに適用した場合の動作を示す。ここで、同図(a)は、水中航行ロボットの方位角速度を非参照状態にした場合、同図(b)は、同水中航行ロボットの方位角速度及び方位角を共に非参照状態にした場合、同図(c)は、2次元デカルト位置座標のうち水中航行ロボットの進行方向に垂直な軸上の座標系のみを非参照状態にした場合をそれぞれ示す。
本来、この種の水中航行ロボット1aの動作計画においては、その2次元デカルト位置座標、前進速度、方位角、及び方位角速度を状態変数として状態空間を構成しなければ、マルコフ性を満たすことができない。しかし、同図(a)に示すように、動作要素の切り替え時における方位角速度を常に一定値0に制御し、その他の時刻では特に固定しないようにすれば、水中航行ロボット1aは自由に旋回運動を行うことができる。また、同図(b)に示すように、動作要素の切り替え時に、方位角速度及び方位角を常に一定値0となるよう制御すれば、水中航行ロボット1aは、このような条件下で切り返し動作を行いながら目標地点まで航行を行うことができる。さらに、同図(c)に示すように、動作要素の切り替えを進行方向軸上のみで行い、その他の変数は自由な値をとることができるようにしても、水中航行ロボット1aの運動性能が大きく妨げられることはない。
次に、図8に、以上の拘束条件を満たす動作要素に基づく動作計画を非ホロノミックマニピュレータとしての水平多関節ロボットに適用した場合の動作の遷移((a)→(b)→(c)→(d))を示す。ここで、同図に示す水平多関節ロボットの構成は、既に図11に示したそれと同一であるものとする。
本来、この種の水平多関節ロボット2の動作計画においては、その肩関節部7、肘関節部8、及び手首関節部9の各関節角、並びにそれらの関節角速度を状態変数として状態空間を構成しなければ、マルコフ性を満たすことができない。しかし、グラフ探索計算を行うコンピュータの性能上の問題から、肘関節部8の角速度を参照できない場合、肩関節部7のアクチュエータのトルクを適切に制御すれば、肘関節部8の回転速度を、動作要素の切り替え時点で常に一定値0に制御することができ、かつ、ある一定量の変位を肘関節部8に与えることができる。
即ち、同図(a)に示すように、動作要素の開始時に、肩関節部7において高いトルクTを発生させると、肘関節部8の座標系で見た場合、同肘関節部8の静止摩擦力により与えられる摩擦トルクよりも大きな回転トルクが、下腕部4に生じる慣性力Mによって肘関節部8に働き、同図(b)に示すように、肩関節部7の回転とは逆方向の回転加速度Rが肘関節部8に発生する。その後、同図(c)に示すように、動作要素の終了時点までに肩関節部7のトルクTを低くすると、肘関節部8の座標系で見た場合、同肘関節部8の摩擦トルクよりも下腕部4の慣性力Mに伴う回転トルクが低くなり、肩関節部7の回転と同方向の回転加速度Rが肘関節部8に発生して、その肘関節部8の回転が減速される。そして、同図(d)に示すように、動作要素の終了時点までに肘関節部8の回転は停止して、その後は肩関節部8の一定速回転が行われる。
この際、肩関節部7が発生するトルクTと肘関節部8の角度変位量との関係は、双方の関節部7,8の角度によって決定されるため、実際の動作計画においては、このような角度に関する動作要素を複数用意すればよい。
ここで、以上に説明した拘束条件を満たす動作要素を実現するには、指示入力値uに対する興奮度u及び疲労度vを内部パラメータとして持つ、以下の数理モデルで表現される神経素子モデルを適用することが有効である。
Figure 2006110675
ここで、定数は、b>0,k>0,τ>0,τ>0であり、
yは、制御対象への入力値である。
このような神経素子モデルは、単体で使用した場合、指示入力値uとして外部から正の値のインパルス入力が与えられたときに、一定時間正の値を出力した後に、その出力値を減少させていく性質がある。ここで、式1において、興奮度uは、第一式の右辺にある項の和で示される神経素子モデルへの入力値が正であるときに、その値が増加するものである。また、疲労度vは、神経素子モデルの出力値y(制御対象への入力値y)が正であるときに、その値が増加するものであり、負の符号をかけて入力される。さらに、この神経素子モデルの出力値yは、興奮度uに正比例した値である。
即ち、神経素子モデルに対して外部から正の指示入力値uが入力された場合、興奮度uの値は増加を始めるが、それに伴い出力値yが増加するため疲労度vの値も増加する。この結果、興奮度uの値の増加が抑制されて、ついには減少に転じる。
この神経素子モデルを2つ用い、それらの出力を互いに抑制しあうように結合すると、出力値yの値が自発的に発振する発振器として利用することが可能であり、一般にCPG(Central Pattern Generator)と呼ばれている。図9に、その回路を示すと共に、以下に、その数理モデルを示す。
Figure 2006110675
ここで、定数は、b>0,k>0,k>0,τ>0,τ>0である。
図9及び式2に示すように、興奮度u及びuは、互いの神経素子モデルへ負の係数をかけてフィードバックされ、各神経素子モデルの興奮が相手の神経素子モデルの興奮を抑制するよう機能するため、2つの神経素子モデルは交互に興奮するようになる。そこで、これら2つの神経素子モデルの出力値y及びyの和を全体の出力値yとすると、この出力値yの値が振動するようになる。以上のようなCPG回路は、ロボット工学の分野では、歩行のような周期的な運動パターンを生成する際に使用されることが多い(上記CPG回路及びその適用形態の更なる詳細については、下記の非特許文献4を参照)。
Kiyoshi Matsuoka,"Mechanism of Frequency and Pattern Control in the Neural Rhythm Generators,"Biological Cybernetics, Vol. 56, pp. 345-353, 1987.
本発明では、上記CPG回路を構成する2つの神経素子モデルのうちの一方を、直接制御対象の非ホロノミックロボットとすることで、所要の動作要素を構成する。即ち、相手の神経素子モデルの興奮度をフィードバックすることに代えて、ロボットの動作計画計算における非参照状態変数の変位量xに負の状態フィードバックをかけて自身に入力するものである。以下に、本発明を具現化した第1〜第4実施形態について説明する。
(第1実施形態)
図1は、本発明の第1実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。
同図に示すように、この第1実施形態に係るロボット制御方法の実施に際しては、コンピュータ(図示せず)内にソフトウェア的に設定された神経素子モデルαが使用される。この神経素子モデルαは、それぞれソフトウェア的に実現される興奮性神経素子11、制御入力値設定部12、状態フィードバック値設定部13、及び疲労性神経素子14を有して構成され、上記コンピュータが非ホロノミックロボット20の動作計画を行う際に、当該非ホロノミックロボット20の運動を支配すると考えられる位置、速度、加速度、負荷の大きさ、障害物の位置などの複数のパラメータのうち1以上を参照から除外して、残りのパラメータに対応した複数の状態変数を離散的な状態空間に構成した場合でも、非ホロノミックロボット20が上記コンピュータにより適正に制御されるよう、当該非参照状態変数の存在に伴うマルコフ性の欠如を補償するよう機能する。
ここで、興奮性神経素子11は、当該神経素子モデルαを内包する上記コンピュータからの指示(外部指示)により設定される指示入力値uを興奮性入力(図示の白丸は当該興奮性入力を表す)として入力することにより、当該指示入力値uに応じた興奮度uを生成する手順を実施する(興奮度生成手順)。そして、同興奮性神経素子11は、その生成した興奮度uを制御入力値設定部22に与える。
制御入力値設定部12は、興奮性神経素子11から与えられた興奮度uに基づいて、非参照状態変数に関する非ホロノミックロボット20への制御入力値yを一次関数y=ku(k:正の値からなる比例定数)を適用して設定する手順を実施する(入力値設定手順)。そして、同制御入力値設定部12は、その設定した制御入力値yを非ホロノミックロボット20に与えると同時に、同制御入力値yを、疲労性神経素子14に対する抑制性入力(図示の黒丸は当該抑制性入力を表す。以下同じ)として当該疲労性神経素子14に与える。
状態フィードバック値生成部13は、制御入力値設定部12から与えられた制御入力値yに基づいて、興奮性神経素子11で生成された興奮度uを漸減的に抑制する制御を行うために、当該制御入力値yに応じて非ホロノミックロボット20から出力される非参照状態変数の変位量xから状態フィードバック値kx(k:正の値からなる比例定数)を生成する手順を実施する(興奮度抑制手順の一部)。そして、同状態フィードバック値生成部13は、その生成した状態フィードバック値kxを、興奮性神経素子11に対する第1の抑制性入力として当該興奮性神経素子21に与える。
疲労性神経素子14は、制御入力値設定部12から与えられた制御入力値yに基づいて、興奮性神経素子11で生成された興奮度uを漸減的に抑制する制御を行うために、当該制御入力値yに応じた疲労度vを生成する手順を実施する(興奮度抑制手順の一部)。そして、同疲労性神経素子14は、その生成した疲労度vに正の値からなる内部比例定数bを乗じて得た値(以下、この値を疲労度bvと言い換える)を、興奮性神経素子11に対する第2の抑制性入力として当該興奮性神経素子11に与える。
以上のように構成された神経素子モデルαを、状態フィードバック値kxをFeedとして数理モデルにより表現すれば、以下のようになる。
Figure 2006110675
即ち、この神経素子モデルαの実際の動作に際しては、外部から正の指示入力値uがインパルス入力されるのに伴い、興奮性神経素子11における興奮度uの値が上昇して、制御入力値設定部12から出力される制御入力値yが上昇し、これに伴い、非ホロノミックロボット20から出力される非参照状態変数の変位量xが上昇すれば、状態フィードバック値生成部13から負の状態フィードバックをかけて興奮性神経素子11に与えられる状態フィードバック値kxも上昇して、これにより、当該興奮性神経素子11における興奮度uを抑制することになる。また、制御入力値設定部12から疲労性神経素子14に対して抑制性入力として与えられる制御入力値yに基づく疲労度bvも、興奮性神経素子11における興奮度uを抑制するよう作用する。
この結果、以上に説明した興奮度生成手順、入力値設定手順、及び興奮度抑制手順を循環的に実施することで、非ホロノミックロボット20から各動作要素の終了時刻に出力される非参照状態変数の変位量xが、当該各動作要素の開始時刻における当該変位量に収束する。このとき、各動作要素の開始時刻における変位量は、最も簡易には0であってよく、これにより、ロボット動作計画用の状態空間がマルコフ性を満たすために必要な拘束条件、即ち「動作要素の開始時刻と終了時刻とにおいて、非参照状態変数の変位量xの値が等しく(0であり)、かつ、その値が全ての動作要素において共通の値である」との拘束条件が満たされるようになる。
なお、制御出力値yの具体例を挙げれば、先に示した図7の水中航行ロボット1aの動作計画において、同図(b)のように方位角及び方位角速度を非参照状態変数とする場合には、それは舵の切り角であるし、また、図8に示した水平多関節ロボット2の動作計画において、肘関節部8の回転角速度を非参照状態変数とする場合には、それは肩関節部7におけるアクチュエータのトルクTとなる。
また、制御入力値設定部12において与えられる関数(y=ku)についての条件は、それが純粋増加関数であることであり、従って、例示したような一次関数以外にも、設計者の随意により三次関数その他を適用することができる。
(第2実施形態)
図2は、本発明の第2実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。
同図に示す神経素子モデルβは、上述した第1実施形態における神経素子モデルαの構成要素である興奮性神経素子11、制御入力値設定部12、状態フィードバック値設定部13、及び疲労性神経素子14に、フィードバック制御器15と、これに伴う加算器16とを追加したものである。
即ち、フィードバック制御器15は、前述した状態フィードバック値生成部13及び疲労性神経素子14による興奮度抑制手順と平行しつつ、制御入力値設定部12による入力値設定手順で設定された制御入力値yに応じて非ホロノミックロボット20から出力される非参照状態変数の変位量xを、加算器16を介しながら当該制御入力値yにフィードバックして、当該変位量xを一定値に維持する制御を所定のフィードバック制御アルゴリズムを用いて行う手順を実施する(フィードバック手順)。
ここで、上記フィードバック制御アルゴリズムの制御目標値は、各動作要素の開始時刻及び終了時刻において、非参照状態変数の変位量xがとるべき値と同じである(最も簡易には)。また、このとき使用するフィードバック制御則としては、通常のPID制御の他、より精度の高い適応制御やロバスト制御などを適用してもよい。これにより、第1実施形態における神経素子モデルαのアルゴリズムに比べ、動作要素の切り替え時における非参照状態変数の変位量xの精度を向上させることが可能となる。
(第3実施形態)
図3は、本発明の第3実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。
同図に示す神経素子モデルγは、上述した第2実施形態における神経素子モデルβの構成要素である興奮性神経素子11、制御入力値設定部12、状態フィードバック値設定部13、疲労性神経素子14、及びフィードバック制御器15(加算器16)から、状態フィードバック値設定部13を排除したものである。
即ち、フィードバック制御器15におけるフィードバック制御アルゴリズムは、非ホロノミックロボット20から出力される非参照状態変数の変位量xを目標値付近に安定化させる能力を持っており、かつ、興奮性神経素子11及び疲労性神経素子14は、インパルス応答として自己の出力を0に収束させる能力を持っているので、第2実施形態におけるほどの精度は得られないものの、この第3実施形態のような構成であっても、動作要素実現のための所要の機能が得られることになる。
(第4実施形態)
図4は、本発明の第4実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。
同図に示す神経素子モデルδは、前述した第1実施形態における神経素子モデルαの構成要素である興奮性神経素子11、制御入力値設定部12、状態フィードバック値設定部13、及び疲労性神経素子14から、疲労性神経素子14を排除したものである。
即ち、非ホロノミックロボット20から出力される非参照状態変数の変位量xに基づく状態フィードバック値が、状態フィードバック値設定部13を通じて興奮性神経素子11に与えられれば、疲労性神経素子14を持たなくても、第3実施形態におけるそれと同様な機能が得られるようになる。
以上、第1〜第4実施形態につき説明したが、非ホロノミックロボット20から出力される非参照状態変数の変位量xが、各動作要素の開始時刻と終了時刻との間でどれだけ変化するか、その非ホロノミックロボット20の運動性能に大きく関係してくる。例えば、水中航行ロボット1aの動作計画における非参照状態変数が方位角速度である場合、それら各動作要素の開始時刻と終了時刻とにおいて、方位角速度が0に固定されているとすれば、その時刻間における当該方位角速度の値がどれだけ激しい変化をするかによって、水中航行ロボット1aの旋回角度や旋回半径の変化の度合いも決定される。ここで、この非参照状態変数の変化量の度合いを左右するのは、指示入力値uである。
この指示入力値uは、その波形の条件として、各動作要素の開始時刻直後に0から正の値に変化し、当該各動作要素の終了時刻までに0に減じられればよいが、最も簡易には、その動作要素の開始時刻直後に立ち上がりを開始するインパルス入力やステップ入力を適用することができる。これは、非ホロノミックロボット20から出力される非参照状態変数の変位量xが、各動作要素の終了時刻付近で目標値(0)に収束することを促進する上で重要である。
ここで、上記指示入力値uの与え方を調整することで、非ホロノミックロボット20の運動性能(例えば、上記水中航行ロボット1aにおける旋回角度や旋回半径)を調整することができる。即ち、指示入力値uをインパルス入力で与えるならば、インパルス振幅値を調整し、それをステップ入力で与えるならば、ステップ振幅値及びステップ継続時間を調整すればよい。
なお、非ホロノミックロボット20の運動性能を調整するには、動作要素全体の時間量を調整することも有効である。即ち、指示入力値uを与える時間が長くなれば、動作要素の終了時刻までに非参照状態変数の変化量も大きくなり、それが一定値に収束するまでの時間も長くなるため、それに応じて動作要素全体の時間量を増やすことが必要である。
ところで、非参照状態変数の中に、例えば、ある座標と関節回転角度の位置との組み合せや速度と加速度との組み合せなどのように、微積分の関係を有する2以上の非参照状態変数が存在する場合、第1,第2及び第4実施形態に対しては、状態フィードバック値生成部13による興奮度抑制手順において、制御入力値設定部12による入力値設定手順で設定された制御入力値yに応じて非ホロノミックロボット20から出力される対応数の非参照状態変数の各変位量x,x,…から、それぞれ対応数のフィードバック値を生成して、当該各状態フィードバック値の総和を第1の抑制入力として興奮性神経素子に与える手順をとるようにする。このようにすることで、それら複数の非参照状態変数の各変位量x,x,…の値が、その動作時刻と終了時刻にて同時に一定値0に維持される動作要素を実現することができる。
また、非参照状態変数の中に微積分の関係を有する2以上の非参照状態変数が存在する場合、第1〜第4実施形態の全てに対し、以下に示すような動作要素の構成法を適用することができる。
図5(a)〜(c)は、第1〜第4実施形態において2以上の非参照状態変数が微積分の関係を有する場合の動作要素の構成法を示す図である。
まず、同図(a)に示すように、第1の制御過程として、微分階数が最も高い第1の非参照状態変数(xの2階微分。例えば、加速度)を制御対象とした複数の動作要素の中から、当該第1の非参照状態変数の変位量に関して時間積分値が等しく方向が逆の2つの動作要素を選択することにより、当該2つの動作要素の各変位波形を連結してなる第1の連結波形に関して、その継続時間が2tとなる新たな動作要素を構成する。
次に、同図(b)に示すように、第2の制御過程として、第1の非参照状態変数よりも微分階数が1つ低い第2の非参照状態変数(xの1階微分。第1の非参照状態変数が加速度の場合には、速度)を制御対象とした複数の動作要素の中から、当該第2の非参照状態変数の変位量に関して第1の連結波形と時間積分値が等しく方向が逆の動作要素を選択することにより、当該動作要素の変位波形を第1の連結波形の積分値に連結してなる第2の連結波形に関して、その継続時間が4tとなる新たな動作要素を構成する。
そして、同図(c)に示すように、第3以降の制御過程として、第2の非参照状態変数よりも微分階数が1つ以上低い第3以降の非参照状態変数(第2の非参照状態変数が速度である場合には、位置)が存在するときは、第2の制御過程と同様な操作により、選択に係る動作要素の変位波形を第2以降の連結波形に順次連結してなる第3以降の連結波形に関してそれぞれ新たな動作要素を構成する。
以上のような過程をとることにより、連結された結果できあがった動作要素は、自動的に、2以上の非参照状態変数が動作要素の開始時刻と終了時刻とで一定値0に維持されるようになり、例えば、位置、速度、及び加速度の全てを同時に非参照状態変数とする際の動作要素を簡易に構成することができる。
なお、以上の第1〜第4実施形態で説明した興奮度生成手順、入力値設定手順、興奮度抑制手順などの各手順を、所定の言語によりコンピュータ読み取り可能に記述すれば、当該各手順を循環的に実行させるロボット制御プログラムが得られるようになる。
以上、本発明の実施の形態について説明したが、本発明は、必ずしも上述した手法及び手順にのみ限定されるものではなく、前述した効果を有する範囲内において、適宜、変更実施することが可能なものである。
本発明の第1実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。 本発明の第2実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。 本発明の第3実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。 本発明の第4実施形態に係るロボット制御方法の実施に使用される神経素子モデルの構成図である。 第1〜第4実施形態において2以上の非参照状態変数が微積分の関係を有する場合の動作要素の構成法を示す図である。 本発明により構成される動作要素の各継続時間におけるロボットへの制御出力値の時間変化と、これに伴いロボットから出力される非参照状態変数の変位量の時間変化とを表す図である。 本発明により構成される動作要素を非ホロノミック移動体としての水中航行ロボットに適用した場合の3例の動作を示す図である。 本発明により構成される動作要素を非ホロノミックマニピュレータとしての水平多関節ロボットに適用した場合の動作の遷移を示す図である。 CPG回路の構成図である。 非ホロノミック移動体としての4輪車移動ロボットの動作態様を示す図である。 非ホロノミックマニピュレータとしての水平多関節ロボットの構成図である。
符号の説明
α,β,γ,δ…神経素子モデル
1…4輪車移動ロボット
1a…水中航行ロボット
2…水平多関節ロボット
3…上腕部
4…下腕部
5…手先部
6…基体
7…肩関節部
8…肘関節部
9…手首関節部
11…興奮性神経素子
12…制御入力値設定部
13…状態フィードバック値生成部
14…疲労性神経素子
15…フィードバック制御器
16…加算器
20…非ホロノミックロボット

Claims (7)

  1. コンピュータを用いて非ホロノミックなロボットの動作計画を行うに際し、当該ロボットの運動を支配する複数のパラメータのうち1以上を参照から除外して、残りのパラメータに対応した複数の状態変数を離散的な状態空間に構成した場合において、その参照されない1以上のパラメータに対応した1以上の非参照状態変数の存在に伴うマルコフ性の欠如を補償して、前記ロボットが適正に制御されるようにするためのロボット制御方法であって、
    前記ロボットの動作に関して事前に離散化表現された複数の動作要素の各継続時間毎に、
    外部指示により設定される指示入力値に応じた興奮度を興奮性神経素子を用いて生成する興奮度生成手順と、
    この興奮度生成手順で生成された前記興奮度に基づいて、前記非参照状態変数に関する前記ロボットへの制御入力値を所定の関数を適用して設定する入力値設定手順と、
    この入力値設定手順で設定された前記制御入力値に基づいて、前記興奮度生成手順で生成された前記興奮度を漸減的に抑制する制御を行う興奮度抑制手順と、を循環的に実施することにより、
    前記ロボットから各動作要素の終了時刻に出力される前記非参照状態変数の変位量を、当該各動作要素の開始時刻における当該変位量に収束させるよう制御する、
    ことを特徴とするロボット制御方法。
  2. 前記興奮度抑制手順は、
    前記入力値設定手順で設定された前記制御入力値に応じて前記ロボットから出力される前記非参照状態変数の変位量から状態フィードバック値を生成して、当該状態フィードバック値を第1の抑制性入力として前記興奮性神経素子に与える手順である、
    ことを特徴とする請求項1に記載のロボット制御方法。
  3. 前記興奮度抑制手順は、
    微積分の関係を有する2以上の前記非参照状態変数が存在する場合、前記入力値設定手順で設定された前記制御入力値に応じて前記ロボットから出力される対応数の前記非参照状態変数の各変位量から、それぞれ対応数の状態フィードバック値を生成して、当該各状態フィードバック値の総和を第1の抑制入力として前記興奮性神経素子に与える手順である、
    ことを特徴とする請求項1に記載のロボット制御方法。
  4. 前記興奮度抑制手順は、
    前記入力値設定手順で設定された前記制御入力値に応じた疲労度を疲労性神経素子を用いて生成して、当該疲労度を第2の抑制性入力として前記興奮性神経素子に与える手順をさらに含む、
    ことを特徴とする請求項2又は3に記載のロボット制御方法。
  5. 前記興奮度抑制手順と並行しつつ、前記入力値設定手順で設定された前記制御入力値に応じて前記ロボットから出力される前記非参照状態変数の変位量を当該制御入力値にフィードバックして、当該変位量を一定値に維持する制御をフィードバック制御アルゴリズムを用いて行うフィードバック手順をさらに実施する、
    ことを特徴とする請求項4に記載のロボット制御方法。
  6. 微積分の関係を有する2以上の前記非参照状態変数が存在する場合、
    第1の制御過程として、微分階数が最も高い第1の前記非参照状態変数を制御対象とした前記複数の動作要素の中から、当該第1の非参照状態変数の変位量に関して時間積分値が等しく方向が逆の2つの前記動作要素を選択することにより、当該2つの動作要素の各変位波形を連結してなる第1の連結波形に関して新たな前記動作要素を構成し、
    第2の制御過程として、前記第1の非参照状態変数よりも微分階数が1つ低い第2の前記非参照状態変数を制御対象とした前記複数の動作要素の中から、当該第2の非参照状態変数の変位量に関して前記第1の連結波形と時間積分値が等しく方向が逆の前記動作要素を選択することにより、当該動作要素の変位波形を前記第1の連結波形の積分値に連結してなる第2の連結波形に関して新たな前記動作要素を構成し、
    第3以降の制御過程として、前記第2の非参照状態変数よりも微分階数が1つ以上低い第3以降の前記非参照状態変数が存在するときは、前記第2の制御過程と同様な操作により、選択に係る前記動作要素の変位波形を第2以降の連結波形に順次連結してなる第3以降の連結波形に関してそれぞれ新たな前記動作要素を構成する
    ことを特徴とする請求項1、2、3、4又は5に記載のロボット制御方法。
  7. コンピュータに、請求項1乃至6の何れか1つに記載のロボット制御方法における興奮度生成手順、入力値設定手順、及び興奮度抑制手順を循環的に実行させる、
    ことを特徴とするロボット制御プログラム。
JP2004300792A 2004-10-14 2004-10-14 ロボット制御方法及びプログラム Active JP4289501B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004300792A JP4289501B2 (ja) 2004-10-14 2004-10-14 ロボット制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004300792A JP4289501B2 (ja) 2004-10-14 2004-10-14 ロボット制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2006110675A true JP2006110675A (ja) 2006-04-27
JP4289501B2 JP4289501B2 (ja) 2009-07-01

Family

ID=36379608

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004300792A Active JP4289501B2 (ja) 2004-10-14 2004-10-14 ロボット制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4289501B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112007000341T5 (de) 2006-04-13 2009-02-12 Matsushita Electric Industrial Co., Ltd., Kadoma-shi System zum Montieren von elektronischen Bauelementen, Platzierungszustands-Prüfvorrichtung und Verfahren zum Montieren von elektronischen Bauelementen
CN115139340A (zh) * 2022-09-01 2022-10-04 北京科技大学 一种失效故障下柔性机器人关节神经网络观测器设计方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112007000341T5 (de) 2006-04-13 2009-02-12 Matsushita Electric Industrial Co., Ltd., Kadoma-shi System zum Montieren von elektronischen Bauelementen, Platzierungszustands-Prüfvorrichtung und Verfahren zum Montieren von elektronischen Bauelementen
CN115139340A (zh) * 2022-09-01 2022-10-04 北京科技大学 一种失效故障下柔性机器人关节神经网络观测器设计方法

Also Published As

Publication number Publication date
JP4289501B2 (ja) 2009-07-01

Similar Documents

Publication Publication Date Title
Haddadin et al. Real-time reactive motion generation based on variable attractor dynamics and shaped velocities
Ata Optimal trajectory planning of manipulators: a review
Fahimi Sliding-mode formation control for underactuated surface vessels
Antonelli et al. Fuzzy redundancy resolution and motion coordination for underwater vehicle-manipulator systems
JP2003241836A (ja) 自走移動体の制御方法および装置
Santhakumar Investigation into the Dynamics and Control of an Underwater Vehicle‐Manipulator System
Fan et al. Real-time finger gaits planning for dexterous manipulation
Li et al. A hybrid model and model-free position control for a reconfigurable manipulator
Veer et al. Safe adaptive switching among dynamical movement primitives: Application to 3D limit-cycle walkers
Blekas et al. RL-based path planning for an over-actuated floating vehicle under disturbances
Ding et al. Single leg dynamic motion planning with mixed-integer convex optimization
Fennel et al. Haptic-guided path generation for remote car-like vehicles
Žlajpah et al. Unified virtual guides framework for path tracking tasks
Liljebäck et al. A 3D motion planning framework for snake robots
Yoneda et al. Gait and foot trajectory planning for versatile motions of a six‐legged robot
Jiang et al. An integrated tracking control approach based on reinforcement learning for a continuum robot in space capture missions
JP2017213631A (ja) ロボットアーム制御装置、ロボットアーム制御方法、およびプログラム
JP4289501B2 (ja) ロボット制御方法及びプログラム
Qi et al. Proposal of helical wave propagate motion for a snake robot to across a branch on a pipe
Hewawasam et al. Development and bench-marking of agoraphilic navigation algorithm in dynamic environment
Wang et al. Path planning optimization for teaching and playback welding robot
Hong et al. Mobile robot control architecture for reflexive avoidance of moving obstacles
Baca et al. Modular robot locomotion based on a distributed fuzzy controller: The combination of modred's basic module motions
Dimeas et al. Progressive automation of periodic movements
Vo et al. A study on turning motion control of a 3-joint fish robot using sliding mode based controllers

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070130

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20070629

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070813

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071109

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20080418

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081028

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081212

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: 20090325

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090325

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120410

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130410

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140410

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350