JP2004114285A - ロボット装置及びその行動制御方法 - Google Patents

ロボット装置及びその行動制御方法 Download PDF

Info

Publication number
JP2004114285A
JP2004114285A JP2003309262A JP2003309262A JP2004114285A JP 2004114285 A JP2004114285 A JP 2004114285A JP 2003309262 A JP2003309262 A JP 2003309262A JP 2003309262 A JP2003309262 A JP 2003309262A JP 2004114285 A JP2004114285 A JP 2004114285A
Authority
JP
Japan
Prior art keywords
behavior
schema
modules
level
action
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
JP2003309262A
Other languages
English (en)
Other versions
JP4449372B2 (ja
Inventor
Profio Ugo Di
ウゴ ディ プロフィオ
Masahiro Fujita
藤田 雅博
Takeshi Takagi
高木 剛
Yukiko Yoshiike
吉池 由紀子
Hideki Shimomura
下村 秀樹
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2003309262A priority Critical patent/JP4449372B2/ja
Publication of JP2004114285A publication Critical patent/JP2004114285A/ja
Application granted granted Critical
Publication of JP4449372B2 publication Critical patent/JP4449372B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Toys (AREA)
  • Manipulator (AREA)

Abstract

【課題】 複数の行動モジュールにより複雑な行動を実現すると共にユニットの組み換えを容易とする。
【解決手段】 状況依存行動階層(SBL)58は、複数のスキーマ(行動モジュール)が階層的に連結されたツリー構造として構成され、各スキーマが独自の行動を実行できるように独立性が高められている。この際、親スキーマは、子供スキーマに対して独自に行動を実行させるORタイプパターン、複数の子供スキーマに対して同時に行動を実行させるANDタイプパターン、或いは複数の子供スキーマの行動順序を示すSEQUENCEタイプパターンのように、子供スキーマの接続パターンを規定することができ、発現する行動パターンを変化させることができる。また、スキーマを書き換えることなく新たな子供スキーマを追加することができ、これによりロボット装置に新たな動作或いは機能を追加することができる。
【選択図】 図17






Description

 本発明は、自律的な動作を行いリアリスティックなコミュニケーションを実現するロボット装置及びその行動制御方法に関し、特に、画像や音声などの外界の状況を認識してそれに対して自身の行動を反映させる機能を備えた自律型のロボット装置及びその行動制御方法に関する。
 電気的又は磁気的な作用を用いて人間(生物)の動作に似た運動を行う機械装置を「ロボット」という。我が国においてロボットが普及し始めたのは、1960年代末からであるが、その多くは、工場における生産作業の自動化・無人化等を目的としたマニピュレータや搬送ロボット等の産業用ロボット(Industrial Robot)であった。
 最近では、人間のパートナーとして生活を支援する、すなわち住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットの開発が進められている。このような実用ロボットは、産業用ロボットとは異なり、人間の生活環境の様々な局面において、個々に個性の相違した人間、又は様々な環境への適応方法を自ら学習する能力を備えている。例えば、犬、猫のように4足歩行の動物の身体メカニズムやその動作を模した「ペット型」ロボット、或いは、2足直立歩行を行う人間等の身体メカニズムや動作をモデルにしてデザインされた「人間型」又は「人間形」ロボット(Humanoid Robot)等のロボット装置は、既に実用化されつつある。
 これらのロボット装置は、産業用ロボットと比較して、エンターテインメント性を重視した様々な動作を行うことができるため、エンターテインメントロボットと称される場合もある。また、そのようなロボット装置には、外部からの情報や内部の状態に応じて自律的に動作するものがある。
 このような自律型のロボット装置は、視覚や聴覚など外部環境の変化に応じて逐次的に行動を選択していくのが一般的である。また、行動選択メカニズムの他の例として、本能や感情といった情動をモデル化してシステムの内部状態を管理し、内部状態の変化に応じて行動を選択するものを挙げることができる。なお、システムの内部状態は、外部環境の変化によっても、選択された行動を発現することによっても変化する。
 ところで、ロボット装置の行動をデザインする際には、ロボット装置のハードウェア、ソフトウェアといったリソースや、要求される行動を考慮する必要があるため、行動モジュールがオンデマンドで実現される場合が多い。
 実際のデザインとしては、モノリシック(monolithic)、すなわち1つのソフトウェアモジュールでロボット装置の行動全体を実現することもできるが、より複雑な行動を実現するために、モジュール化、すなわち行動を複数の単純なユニットに分解し、その相互作用により行動全体を実現することもできる(例えば下記特許文献1参照)。
特開2003−111981号公報
 しかしながら、従来、あるユニットを別の行動を実現するために用いようとした場合、ユニット同士の相互作用の手順(procedure)やユニット自体を根本的に書き換えなければならない場合があり、ユニットの組み換えが困難であるという問題があった。
 本発明は、このような従来の実情に鑑みて提案されたものであり、複数の行動モジュールにより複雑な行動を実現すると共にユニットの組み換えを容易とするロボット装置及びその行動制御方法を提供することを目的とする。
 上述した目的を達成するために、本発明に係るロボット装置は、可動部を有するロボット装置において、上記可動部を制御する可動部制御手段と、上記ロボット装置の機体動作を記述する複数の行動モジュールが木構造形式に構成された行動決定手段とを備え、上記行動モジュールは、自身に接続される一以上の下位の行動モジュールの制御ポリシーを記憶した記憶手段を有し、上記一以上の下位の行動モジュールが接続される上位の行動モジュールは、上記制御ポリシーに基づいて、上記一以上の下位の行動モジュールを制御し、上記可動部制御手段は、上記上位の行動モジュール又は上記一以上の下位の行動モジュールが決定した行動に基づいて、上記可動部を制御するものである。
 また、上述した目的を達成するために、本発明に係る行動制御方法は、可動部を有するロボット装置の行動制御方法において、上記ロボット装置の機体動作を記述する複数の行動モジュールが、上位の行動モジュールに一以上の下位の行動モジュールが接続される木構造形式に構成されており、上記上位の行動モジュールが、記憶手段に記憶された制御ポリシーに基づいて、上記一以上の下位の行動モジュールを制御するステップと、上記上位の行動モジュール又は上記一以上の下位の行動モジュールが決定した行動に基づいて、上記可動部を制御するステップとを有するものである。
 このようなロボット装置及びその行動制御方法では、木構造形式に構成された複数の行動モジュールのうち、上位の行動モジュールは、記憶手段に記憶された制御ポリシーに基づいて、自身に接続された一以上の行動モジュールを制御する。
 本発明に係るロボット装置及びその行動制御方法では、木構造形式に構成された複数の行動モジュールのうち、上位の行動モジュールが、記憶手段に記憶された制御ポリシーに基づいて、自身に接続された一以上の行動モジュールを制御するため、各行動モジュールの独立性を高めることができ、したがって行動モジュールの木構造の組み換えが容易とされる。
 以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
 本発明の一構成例として示す2足歩行タイプのロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、内部状態(怒り、悲しみ、喜び、楽しみ等)に応じて行動できるほか、人間が行う基本的な動作を表出できるエンターテインメントロボットである。
 図1に示すように、ロボット装置1は、体幹部ユニット2の所定の位置に頭部ユニット3が連結されると共に、左右2つの腕部ユニット4R/Lと、左右2つの脚部ユニット5R/Lが連結されて構成されている(但し、R及びLの各々は、右及び左の各々を示す接尾辞である。以下において同じ。)。
 このロボット装置1が具備する関節自由度構成を図2に模式的に示す。頭部ユニット3を支持する首関節は、首関節ヨー軸101と、首関節ピッチ軸102と、首関節ロール軸103という3自由度を有している。
 また、上肢を構成する各々の腕部ユニット4R/Lは、、肩関節ピッチ軸107と、肩関節ロール軸108と、上腕ヨー軸109と、肘関節ピッチ軸110と、前腕ヨー軸111と、手首関節ピッチ軸112と、手首関節ロール軸113と、手部114とで構成される。手部114は、実際には、複数本の指を含む多関節・多自由度構造体である。但し、手部114の動作は、ロボット装置1の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は7自由度を有するとする。
 また、体幹部ユニット2は、体幹ピッチ軸104と、体幹ロール軸105と、体幹ヨー軸106という3自由度を有する。
 また、下肢を構成する各々の脚部ユニット5R/Lは、股関節ヨー軸115と、股関節ピッチ軸116と、股関節ロール軸117と、膝関節ピッチ軸118と、足首関節ピッチ軸119と、足首関節ロール軸120と、足部121とで構成される。本明細書中では、股関節ピッチ軸116と股関節ロール軸117の交点は、ロボット装置1の股関節位置を定義する。人体の足部121は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置1の足底は、ゼロ自由度とする。したがって、各脚部は、6自由度で構成される。
 以上を総括すれば、ロボット装置1全体としては、合計で3+7×2+3+6×2=32自由度を有することになる。但し、エンターテインメント向けのロボット装置1が必ずしも32自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度すなわち関節数を適宜増減することができることはいうまでもない。
 上述したようなロボット装置1が持つ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、2足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
 図3には、ロボット装置1の制御システム構成を模式的に示している。同図に示すように、ロボット装置1は、ヒトの四肢を表現した体幹部ユニット2,頭部ユニット3,腕部ユニット4R/L,脚部ユニット5R/Lと、各ユニット間の協調動作を実現するための適応制御を行う制御ユニット10とで構成される。
 ロボット装置1全体の動作は、制御ユニット10によって統括的に制御される。制御ユニット10は、CPU(Central Processing Unit)や、DRAM、フラッシュROM等の主要回路コンポーネント(図示しない)で構成される主制御部11と、電源回路やロボット装置1の各構成要素とのデータやコマンドの授受を行うインターフェイス(何れも図示しない)などを含んだ周辺回路12とで構成される。
 本発明を実現する上で、この制御ユニット10の設置場所は、特に限定されない。図3では体幹部ユニット2に搭載されているが、頭部ユニット3に搭載してもよい。あるいは、ロボット装置1外に制御ユニット10を配備して、ロボット装置1の機体とは有線又は無線で交信するようにしてもよい。
 図2に示したロボット装置1内の各関節自由度は、それぞれに対応するアクチュエータによって実現される。すなわち、頭部ユニット3には、首関節ヨー軸101、首関節ピッチ軸102、首関節ロール軸103の各々を表現する首関節ヨー軸アクチュエータA、首関節ピッチ軸アクチュエータA、首関節ロール軸アクチュエータAが配設されている。
 また、頭部ユニット3には、外部の状況を撮像するためのCCD(Charge Coupled Device)カメラが設けられているほか、前方に位置する物体までの距離を測定するための距離センサ、外部音を集音するためのマイクロホン、音声を出力するためのスピーカ、使用者からの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出するためのタッチセンサ等が配設されている。
 また、体幹部ユニット2には、体幹ピッチ軸104、体幹ロール軸105、体幹ヨー軸106の各々を表現する体幹ピッチ軸アクチュエータA、体幹ロール軸アクチュエータA、体幹ヨー軸アクチュエータAが配設されている。また、体幹部ユニット2には、このロボット装置1の起動電源となるバッテリを備えている。このバッテリは、充放電可能な電池によって構成されている。
 また、腕部ユニット4R/Lは、上腕ユニット4R/Lと、肘関節ユニット4R/Lと、前腕ユニット4R/Lに細分化されるが、肩関節ピッチ軸107、肩関節ロール軸108、上腕ヨー軸109、肘関節ピッチ軸110、前腕ヨー軸111、手首関節ピッチ軸112、手首関節ロール軸113の各々表現する肩関節ピッチ軸アクチュエータA、肩関節ロール軸アクチュエータA、上腕ヨー軸アクチュエータA10、肘関節ピッチ軸アクチュエータA11、肘関節ロール軸アクチュエータA12、手首関節ピッチ軸アクチュエータA13、手首関節ロール軸アクチュエータA14が配備されている。
 また、脚部ユニット5R/Lは、大腿部ユニット5R/Lと、膝ユニット5R/Lと、脛部ユニット5R/Lに細分化されるが、股関節ヨー軸115、股関節ピッチ軸116、股関節ロール軸117、膝関節ピッチ軸118、足首関節ピッチ軸119、足首関節ロール軸120の各々を表現する股関節ヨー軸アクチュエータA16、股関節ピッチ軸アクチュエータA17、股関節ロール軸アクチュエータA18、膝関節ピッチ軸アクチュエータA19、足首関節ピッチ軸アクチュエータA20、足首関節ロール軸アクチュエータA21が配備されている。各関節に用いられるアクチュエータA,A・・・は、より好ましくは、ギア直結型で旦つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ACサーボ・アクチュエータで構成することができる。
 体幹部ユニット2、頭部ユニット3、各腕部ユニット4R/L、各脚部ユニット5R/Lなどの各機構ユニット毎に、アクチュエータ駆動制御部の副制御部20,21,22R/L,23R/Lが配備されている。さらに、各脚部ユニット5R/Lの足底が着床したか否かを検出する接地確認センサ30R/Lを装着するとともに、体幹部ユニット2内には、姿勢を計測する姿勢センサ31を装備している。
 接地確認センサ30R/Lは、例えば足底に設置された近接センサ又はマイクロ・スイッチなどで構成される。また、姿勢センサ31は、例えば、加速度センサとジャイロ・センサの組み合わせによって構成される。
 接地確認センサ30R/Lの出力によって、歩行・走行などの動作期間中において、左右の各脚部が現在立脚又は遊脚何れの状態であるかを判別することができる。また、姿勢センサ31の出力により、体幹部分の傾きや姿勢を検出することができる。
 主制御部11は、各センサ30R/L,31の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部20,21,22R/L,23R/Lの各々に対して適応的な制御を行い、ロボット装置1の上肢、体幹、及び下肢が協調して駆動する全身運動パターンを実現できる。
 ロボット装置1の機体上での全身運動は、足部運動、ZMP(Zero Moment Point)軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容に従った動作を指示するコマンドを各副制御部20,21,22R/L,23R/Lに転送する。そして、各々の副制御部20,21,・・・等では、主制御部11からの受信コマンドを解釈して、各アクチュエータA,A・・・等に対して駆動制御信号を出力する。ここでいう「ZMP」とは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、「ZMP軌道」とは、例えばロボット装置1の歩行動作期間中にZMPが動く軌跡を意味する。なお、ZMPの概念並びにZMPを歩行ロボットの安定度判別規範に適用する点については、Miomir Vukobratovic著“LEGGED LOCOMOTION ROBOTS”(加藤一郎外著『歩行ロボットと人工の足』(日刊工業新聞社))に記載されている。
 以上のように、ロボット装置1は、各々の副制御部20,21,・・・等が、主制御部11からの受信コマンドを解釈して、各アクチュエータA,A・・・に対して駆動制御信号を出力し、各ユニットの駆動を制御している。これにより、ロボット装置1は、目標の姿勢に安定して遷移し、安定した姿勢で歩行できる。
 また、ロボット装置1における制御ユニット10では、上述したような姿勢制御のほかに、加速度センサ、タッチセンサ、接地確認センサ等の各種センサ、及びCCDカメラからの画像情報、マイクロホンからの音声情報等を統括して処理している。制御ユニット10では、図示しないが加速度センサ、ジャイロ・センサ、タッチセンサ、距離センサ、マイクロホン、スピーカなどの各種センサ、各アクチュエータ、CCDカメラ及びバッテリが各々対応するハブを介して主制御部11と接続されている。
 主制御部11は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部インターフェイスを介してDRAM内の所定位置に順次格納する。また、主制御部11は、バッテリから供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをDRAM内の所定位置に格納する。DRAMに格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、主制御部11がこのロボット装置1の動作制御を行う際に利用される。
 主制御部11は、ロボット装置1の電源が投入された初期時、制御プログラムを読み出し、これをDRAMに格納する。また、主制御部11は、上述のように主制御部11よりDRAMに順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
 さらに、主制御部11は、この判断結果及びDRAMに格納した制御プログラムに基づいて自己の状況に応じて行動を決定するとともに、当該決定結果に基づいて必要なアクチュエータを駆動させることによりロボット装置1に、いわゆる「身振り」、「手振り」といった行動をとらせる。
 このようにしてロボット装置1は、制御プログラムに基づいて外部刺激の認識結果や内部状態の変化に応じて行動制御を行うことができる。図4には、ロボット装置1において採用される行動制御システム50の基本アーキテクチャを模式的に示している。
 図示の行動制御システム50には、オブジェクト指向プログラミングを採り入れることができる。この場合、各ソフトウェアは、データ(プロパティ)とそのデータに対する処理手続き(メソッド)とを一体化させた「オブジェクト」というモジュール単位で扱われる。また、各オブジェクトは、メッセージ通信と共有メモリを使ったオブジェクト間通信方法により、プロパティの受け渡しとメソッドの継承を行うことができる。
 行動制御システム50は、外部環境(Environment)61を認識するために、視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53を備えている。
 視覚認識機能部(Video)51は、例えば、CCDカメラのような画像入力装置を介して入力された撮影画像を基に、顔認識や色認識などの画像認識処理や特徴抽出を行う。視覚認識機能部51は、後述する"MultiColorTracker","FaceDetector","FaceIdentify"といった複数のオブジェクトで構成される。
 聴覚認識機能部(Audio)52は、マイクロホンなどの音声入力装置を介して入力される音声データを音声認識して、特徴抽出したり、単語セット(テキスト)認識を行ったりする。聴覚認識機能部52は、後述する"AudioRecog","SpeechRecog"といった複数のオブジェクトで構成される。
 接触認識機能部(Tactile)53は、例えば機体の頭部などに内蔵されたタッチセンサによるセンサ信号を認識して、「撫でられた」とか「叩かれた」という外部刺激を認識する。
 内部状態管理部(ISM:InternalStatusManager)54は、本能モデルや感情モデルを備え、上述の視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53によって認識された外部刺激(ES:ExternalStimula)に応じてロボット装置1の本能や情動といった内部状態を管理する。
 感情モデルと本能モデルは、それぞれ認識結果と行動履歴を入力に持ち、感情値と本能値を管理している。行動モデルは、これら感情値や本能値を参照することができる。
 短期記憶部(ShortTermMemory)55は、上述の視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53によって外部環境から認識されたターゲットやイベントを短期間保持する機能モジュールである。例えば、CCDカメラからの入力画像を約15秒程度の短い期間だけ記憶する。
 長期記憶部(LongTermMemory)56は、物の名前など学習により得られた情報を超期間保持するために使用される。長期記憶部56は、例えば、ある行動モジュールにおいて外部刺激から内部状態の変化を連想記憶する。
 ロボット装置1の行動制御は、反射行動部59によって実現される「反射行動」と、状況依存行動階層58によって実現される「状況依存行動」と、熟考行動階層57によって実現される「熟考行動」に大別される。
 熟考行動階層(DeliberativeLayer)57は、短期記憶部55並びに長期記憶部56の記憶内容に基づいて、ロボット装置1の比較的長期にわたる行動計画などを行う。
 熟考行動は、与えられた状況或いは人間からの命令により、推論やそれを実現するための計画を立てて行われる行動である。このような推論や計画は、インタラクションを保つための反応時間よりも処理時間や計算負荷を要するので、ロボット装置1は反射行動や状況依存行動をリアルタイムで反応を返しながら行い、熟考行動を推論や計画を立てて行う。
 状況依存行動階層(SBL:SituatedBehaviorsLayer)58は、短期記憶部55及び長期記憶部56の記憶内容や、内部状態管理部54によって管理される内部状態を基に、ロボット装置1が現在置かれている状況に即応した行動を制御する。
 状況依存行動階層58は、各行動毎にステートマシンを用意しており、それ以前の行動や状況に依存して、センサ入力された外部情報の認識結果を分類して、行動を機体上で発現する。また、状況依存行動階層58は、内部状態をある範囲に保つための行動(「ホメオスタシス行動」とも呼ぶ)も実現し、内部状態が指定した範囲内を越えた場合には、その内部状態を当該範囲内に戻すための行動が出やすくなるようにその行動を活性化させる(実際には、内部状態と外部環境の両方を考慮した形で行動が選択される)。状況依存行動は、反射行動(後述)に比し、反応時間が遅い。
 反射行動部(Reflexive SBL)59は、上述の視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53によって認識された外部刺激に応じて反射的な機体動作を実現する機能モジュールである。
 反射行動は、基本的に、センサ入力された外部情報の認識結果を直接受けて、これを分類して、出力行動を直接決定する行動である。例えば、検出された障害物を咄嗟に避けるといった振る舞いは反射行動として実装することが好ましい。
 本実施の形態におけるロボット装置1では、短期記憶部55が、上述した視覚認識機能部51、聴覚認識機能部52、接触認識機能部53などの複数の認識器の結果を時間的及び空間的に整合性を保つように統合して、外部環境下の各物体に関する知覚を短期間の記憶として状況依存行動階層(SBL)58などに提供するようになっている。また、センサ入力された外部情報の認識結果を直接、反射行動部(Reflexive SBL)59に提供するようになっている。
 一般的に、様々な条件を加味した上で行動を決定する状況依存行動階層(SBL)58や、熟考行動階層57のみであるとロボットの反応は遅くなる。そこで、本実施の形態のロボット装置1の行動制御システム50は、様々な条件(内部状態と外部状態)を加味して行動の発現を決定しようとするために、状況依存行動階層(SBL)58や、熟考行動階層57のほか、ある単一のセンサ条件において行動の発現を決定する反射行動部(Reflexive SBL)59も別プロセスとなるようにシステム構成されている。
 なお、上述した熟考行動階層57や状況依存行動階層(SBL)58、反射行動部(Reflexive SBL)59は、ロボット装置1のハードウェア構成に非依存の上位のアプリケーション・プログラムとして記述することができる。これに対し、ハードウェア依存行動制御部(ConfigurationDependentActionAndReactions)60は、これら上位アプリケーション(「スキーマ」と呼ばれる行動モジュール)からの命令に応じて、上述したアクチュエータA,A・・・の駆動などの機体のハードウェア(外部環境)を直接操作する。
 ここで、図4に示したようなロボット装置1の行動制御システム50における各機能モジュールは、オブジェクトとして構成される。各オブジェクトは、メッセージ通信と共有メモリを使ったオブジェクト間通信方法によりデータ(プロパティ)の受け渡しと、事物の振る舞いを記述したプログラム(メソッド)の継承を行っている。以下、行動制御システム50におけるオブジェクト構成を模式的に示した図5を参照しながら、各オブジェクトの機能について説明する。
 視覚認識機能部51は、"FaceDetector"、"MultiColotTracker”、"FaceIdentify"という3つのオブジェクトで構成される。FaceDetectorは、画像フレーム中から顔領域を検出するオブジェクトであり、検出結果をFaceIdentifyに出力する。MultiColorTrackerは、色認識を行うオブジェクトであり、認識結果をFaceIdentify及びShortTermMemory(短期記憶部55を構成するオブジェクト)に出力する。また、FaceIdentifyは、検出された顔画像を手持ちの人物辞書で検索するなどして人物の識別を行い、顔画像領域の位置、大きさ情報とともに人物のID情報をShortTermMemoryに出力する。
 聴覚認識機能部52は、"AudioRecog"と"SpeechRecog"という2つのオブジェクトで構成される。AudioRecogは、マイクロホンなどの音声入力装置からの音声データを受け取って、特徴抽出と音声区間検出を行うオブジェクトであり、音声区間の音声データの特徴量及び音源方向をSpeechRecogやShortTermMemoryに出力する。SpeechRecogは、AudioRecogから受け取った音声特徴量と音声辞書及び構文辞書を使って音声認識を行うオブジェクトであり、認識された単語のセットをShortTermMemoryに出力する。
 接触認識機能部53は、タッチセンサからのセンサ入力を認識する"TactileSensor"というオブジェクトで構成され、認識結果はShortTermMemoryや内部状態を管理するオブジェクトであるInternalStatusManager(ISM)に出力する。
 ShortTermMemory(STM)は、短期記憶部55を構成するオブジェクトであり、上述の認識系の各オブジェクトによって外部環境から認識されたターゲットやイベントを短期間保持(例えばCCDカメラからの入力画像を約15秒程度の短い期間だけ記憶する)する機能モジュールであり、STMクライアントであるSituatedBehaviorsLayerに対して外部刺激の通知(Notify)を定期的に行う。
 LongTermMemory(LTM)は、長期記憶部56を構成するオブジェクトであり、物の名前など学習により得られた情報を長期間保持するために使用される。LongTermMemoryは、例えば、ある行動モジュールにおいて外部刺激から内部状態の変化を連想記憶することができる。
 InternalStatusManager(ISM)は、内部状態管理部54を構成するオブジェクトであり、本能や感情といった数種類の情動を数式モデル化して管理しており、上述の認識系の各オブジェクトによって認識された外部刺激(ES:ExternalStimula)に応じてロボット装置1の本能や情動といった内部状態を管理する。
 SituatedBehaviorsLayer(SBL)は、状況依存行動階層58を構成するオブジェクトである。SBLは、ShorTermMemoryのクライアント(STMクライアント)となるオブジェクトであり、ShorTermMemoryから定期的に外部刺激(ターゲットやイベント)に関する情報の通知(Notify)を受け取り、スキーマ(schema)、すなわち実行すべき行動モジュールを決定する。このSBLについての詳細は後述する。
 Reflexive SBLは、反射行動部59を構成するオブジェクトであり、上述した認識系の各オブジェクトによって認識された外部刺激に応じて反射的・直接的な機体動作を実行する。例えば、検出された障害物を咄嗟に避けるといった振る舞いを行う。
 上述したように、SituatedBehaviorsLayerは、外部刺激や内部状態の変化などの状況に応じて行動を選択する。これに対し、Reflexive SBLは、外部刺激に応じて反射的を行動する。これら2つのオブジェクトによる行動選択は独立して行われるため、互いに選択された行動モジュール(スキーマ)を機体上で実行する場合に、ロボット1のハードウェア・リソースが競合して実現不可能なこともある。そこで、ResourceManagerというオブジェクトは、SituatedBehaviorsLayerとReflexive SBLによる行動選択時のハードウェアの競合を調停する。そして、調停結果に基づいて機体動作を実現する各オブジェクトに通知することにより機体が駆動する。
 SoundPerformer、MotionController、LEDControllerは、機体動作を実現するオブジェクトである。SoundPerformerは、音声出力を行うためのオブジェクトであり、ResourceManager経由でSituatedBehaviorLayerから与えられたテキスト・コマンドに応じて音声合成を行い、ロボット1の機体上のスピーカから音声出力を行う。また、MotionControllerは、機体上のアクチュエータA,A・・・の動作を行うためのオブジェクトであり、ResourceManager経由でSituatedBehaviorLayerから手や脚などを動かすコマンドを受けたことに応答して、該当する関節角を計算する。また、LEDControllerは、LED(Light Emitting Diode)の点滅動作を行うためのオブジェクトであり、ResourceManager経由でSituatedBehaviorLayerからコマンドを受けたことに応答してLEDの点滅駆動を行う。
 上述した状況依存行動階層(SBL)58(但し、反射行動部59を含む。)による状況依存行動制御の形態を図6に模式的に示す。認識系51〜53による外部環境の認識結果は、外部刺激として状況依存行動階層(SBL)58に与えられる。また、認識系51〜53による外部環境の認識結果に応じた内部状態の変化も状況依存行動階層(SBL)58に与えられる。そして、状況依存行動階層(SBL)58では、外部刺激や内部状態の変化に応じて状況を判断して、行動選択を実現することができる。
 ところで、状況依存行動階層(SBL)58は、各行動モジュール毎にステートマシンを用意しており、それ以前の行動や状況に依存して、センサ入力された外部情報の認識結果を分類して、行動を機体上で発現する。行動モジュールは、外部刺激や内部状態に応じた状況判断を行うモニター機能と、行動実行に伴う状態遷移(ステートマシン)を実現するアクション機能とを備えたスキーマ(schema)として記述される。状況依存行動階層(SBL)58が複数のスキーマによって構成されている様子を図7に模式的に示す。
 状況依存行動階層(SBL)58(より厳密には、状況依存行動階層58のうち、通常の状況依存行動を制御する階層)は、複数のスキーマが階層的に連結されたツリー構造として構成され、外部刺激や内部状態の変化に応じてより最適なスキーマを統合的に判断して行動制御を行うようになっている。ツリーは、例えば動物行動学的(Ethological)な状況依存行動を数式化した行動モデルや、感情表現を実行するためのサブツリーなど、複数のサブツリー(又は枝)を含んでいる。
 ここで、ロボット装置1の行動として人間とのインタラクションを想定し、実際の人間で観察される行動を参考として状況依存行動階層(SBL)58のツリーを構成することにする。
 具体的に、人間が誰か他人と話したいときの行動を、
 (a)パートナー(ターゲット)を探し、
 (b)そのパートナー(ターゲット)に近づき、
 (c)そのパートナー(ターゲット)と話す(会話する)
という独立した行動に単純化し、これらの行動を実現できるように状況依存行動階層(SBL)58のツリーを構成する例を図8を用いて説明する。
 図8に示すように、状況依存行動階層(SBL)58は、短期記憶部(ShortTermMemory)55から外部刺激の通知(Notify)を受けるルート(Root)・スキーマを先頭に、抽象的な行動カテゴリから具体的な行動カテゴリに向かうように、各階層毎にスキーマが配設される。すなわち、Rootスキーマの直近下位の階層には、「SearchTarget(ターゲットを探す)」、「ApproachTarget(ターゲットに近づく)」、「Dialogue(対話する)」というスキーマが配設され、これにより行動アルゴリズムがモデル化される。そして、SearchTargetスキーマの下位には、「LookTo」、「LookFor」という具体的な探索行動に関わる行動を記述したスキーマが配設される。同様に、ApproachTargetスキーマの下位には、「Tracking」、「Approach」という具体的なターゲットに近づく行動に関わる行動を記述したスキーマが配設され、Dialogueスキーマの下位には、「Tracking」、「Chat」という具体的な対話行動に関わる行動を記述したスキーマが配設される。なお、図におけるTrackingスキーマのように、同じスキーマを異なるサブツリーに配設することも可能である。
 ここで、本実施の形態における各スキーマは、それぞれ独自に行動を発現する機能を有しており、他のスキーマからの独立性(モジュラリティ(Modularity))が高められている。このため、スキーマをデザインする際にも、設計しようとする動作の特徴のみにフォーカスを絞ることができ、ツリー構造の中で実際に動作する際に発生する可能性のある他の要求を考慮する必要がない。実際上、各スキーマは、動作関連情報としてのフォーカスを有しており、動作する際には特定のターゲットとなる例えば環境中の物体や人物を参照することができる。スキーマ毎の特定の動作に応じて、そのスキーマが動作するために必要十分な最小限の情報が存在し、そのような情報により上述したフォーカスが構成される。なお、各スキーマは、異なったフォーカスを有することができる。
 各スキーマは、そのフォーカスに含まれる情報に依存しているため、他のスキーマや、自身が配設されているツリー構造から独立している。但し、後述するように、各スキーマは他のスキーマと協調して行動を発現することもできる。
 例えば、トラッキング行動を実現するTrackingスキーマは、ターゲットの位置をトラッキングし、又はその動きの経路を観察し、ターゲットの方向に顔(頭)を向ける。ターゲットが環境中の人間である場合、Trackingスキーマが実行されると、ロボット装置1は、自身とターゲットとの相対位置関係に応じて頭部ユニット3を継続的に左右に振り、これにより頭部ユニット3は常にターゲットに正対する。ここで、Trackingスキーマのフォーカスとしては、行動制御システム50の視覚認識機能部51によって認識されたターゲットを同定するためのシンボルを用いることができる。例えば、視覚認識機能部51が認識された物体(物或いは人物)や検出されたイベント毎にID情報を関連付けている場合には、そのID情報をフォーカスとして用いることができる。
 図8に示したツリー構造に各スキーマ毎のフォーカス情報を追加した図を図9に示す。図9の例では、殆どのスキーマは、ターゲット、例えば会話のパートナーとなる環境中の人物についてのID情報(ターゲットID)以外のフォーカス情報を必要としておらず、Dialogueスキーマ及びChatスキーマのみが会話の内容(トピック)を示すフォーカス情報を必要とする。ここで、LookForスキーマは、特定のターゲットを必要としないためフォーカスを有していない。すなわち、LookForスキーマは、環境中のどのようなターゲットであっても探すことができる。
 また、図9から分かるように、フォーカスに含まれる情報間には干渉(coherence)による制約がない。言い換えれば、各ターゲットIDが環境中の異なるターゲット(物体や人物)に対応することができる。干渉性がない場合には、全体として発現される行動は、各スキーマによる動作の単純な結合となる。例えば、図10に示すように、ApproachTarget行動のサブツリーにおいて、下位(子供)のTrackingスキーマ及びApproachスキーマが、例えばターゲットT及びターゲットTという異なったターゲットをフォーカスとした場合、ロボット装置1は、図11に示すように、ターゲットTをトラッキングしながらターゲットTに向かって歩く行動を行う。
 ところで、本実施の形態において、各スキーマは、互いにデータや制御信号を交換するためのインターフェイスを有しており、複雑な行動を実現するためのツリー構造に組み換えることができる。また、各スキーマは、子供スキーマ、すなわち残りの構造とインタラクションするための他のスキーマを有することができる。以下、このようなスキーマを親スキーマ、或いはハブ(hub)スキーマと呼ぶ。
 親スキーマは、子供スキーマの接続パターン(制御ポリシー)を規定し、又は子供スキーマをある程度まで制御する。逆に子供スキーマは、親スキーマが規定した接続パターンに従うのみで親スキーマからは独立して動作し、又は親スキーマの制御の下に動作する。なお、この接続パターンの情報は、親スキーマが有する図示しない記憶手段に記憶されている。例えば、インターフェイスを介して各スキーマがフォーカスの情報を交換することもでき、また、例えばApproachTargetスキーマがTrackingスキーマを制御可能な場合に、ApproachTargetスキーマがTrackingスキーマのフォーカスを設定することもできる。この場合、親スキーマは、子供スキーマの見ているフォーカスをモニターし、要求があると、例えばフォーカスを設定することで子供スキーマの動作を制御する。親スキーマであるApproachTargetスキーマが、子供スキーマであるTrackingスキーマ及びApproachスキーマのフォーカスとして、ターゲットTを設定した例を図12に示す。
 ここで、上述したように、各スキーマは、ターミナルノード(Terminal Nodes)、すなわち子供スキーマとなることもでき、ハブノード(Hub Nodes)、すなわち親スキーマとなることもできる。また、親スキーマは、子供スキーマの接続パターンを規定することができる。そこで、以下では、この接続パターンについて詳細に説明する。
 図7の例において、各サブツリー毎に典型的な親−子供接続パターン、すなわちインタラクションのパターンが存在する。以下、順に説明する。
 先ず、SearchTargetスキーマは、LookForスキーマ及びLookToスキーマの親スキーマであり、この3つのスキーマによりSearchTarget行動のサブツリーが構成される。LookForスキーマは、探索行動(何かを探す行動)を行うスキーマであり、例えば人物の顔を視覚的に探索する。このスキーマは、環境中をスキャンして顔を探すために、ロボット装置1の頭部ユニット3を用いる。なお、物体等の他のターゲットを探索してもよいことは勿論である。LookToスキーマは、音に振り向く行動(音の方向を見る行動)を行うスキーマであり、例えば声が聞こえたときに、頭部ユニット3をその声の方向に向ける。このように、LookForスキーマ及びLookToスキーマは独立したスキーマであり、他のスキーマとは独立して動作を実行することができる。
 一方、SearchTarget行動のサブツリーにおいて、SearchTargetスキーマは、より複雑な行動を実現するためにLookForスキーマ及びLookToスキーマを子供スキーマとして用いる。その子供スキーマは、親スキーマ(SearchTargetスキーマ)からの干渉(制御)を何ら受けることなく、互いに独立して動作する。言い換えれば、SearchTarget行動のサブツリーが実行されている場合、ロボット装置1は、LookForスキーマの動作によって頭部を継続的に左右に振り、ターゲットとなる人物の顔が検出された時点で止まる。同時に、ロボット装置1は、LookToスキーマの動作によって環境中で声が聞こえた場合に声の方向に頭部を向ける。
 このように、SearchTargetスキーマは、子供スキーマを制御するのではなく、中立的なハブスキーマとして動作する。本明細書では、このような接続パターンをORタイプパターン(ORポリシー)と呼ぶ。このORタイプパターンの接続関係では、任意の子供スキーマは、他のスキーマからの相互作用を何ら受けることなく、任意の時間に動作を実行することができる。この場合のSearchTarget行動のサブツリーを図13に示す。
 なお、本実施の形態では、1つのスキーマによる単純な行動と比較してこのような複雑な行動を、特定の状況に適するようにスキーマを組み換えることなく、子供スキーマの接続パターンを規定するのみで実現することができる。
 次に、ApproachTargetスキーマは、Trackingスキーマ及びApproachスキーマの親スキーマであり、この3つのスキーマによりApproachTarget行動のサブツリーが構成される。Trackingスキーマは、ターゲットの位置をトラッキングし、又はその動きの経路を観察し、ターゲットの方向に顔(頭)を向ける。Approachスキーマは、ターゲットに向かって歩く行動を行うスキーマであり、ターゲットとなる例えば環境中の人物が所定の距離以内となるまで、その人物に向かって歩く。このように、Trackingスキーマ及びApproachスキーマは独立したスキーマであり、他のスキーマとは独立して動作を実行することができる。
 しかしながら、ApproachTarget行動のサブツリーにおいて、ApproachTargetスキーマは、より複雑な行動を実現するためにTrackingスキーマ及びApproachスキーマを子供スキーマとして用いる。特に、ApproachTargetスキーマは、
 (a)全ての子供スキーマが協調して動作し、
 (b)全ての子供スキーマが同じフォーカス、例えば同じターゲットを有する
ことを保証するために、子供スキーマの動作の一貫性をチェックする。言い換えれば、ApproachTarget行動のサブツリーが実行されており、ターゲットが例えば環境中の人物である場合、ロボット装置1は、Trackingスキーマの動作によって自身とターゲットとの相対位置関係、及びその人物と自身の動作に応じて頭部ユニット3を継続的に左右に振り、これにより頭部ユニット3は常にターゲットに正対する。同時に、ロボット装置1は、Approachスキーマの動作によってその人物の方向に向かって歩く。
 このように、ApproachTargetスキーマは、子供スキーマを制御する。本明細書では、このような接続パターンをANDタイプパターン(ANDポリシー)と呼ぶ。このANDタイプパターンの接続関係では、全ての子供スキーマが協調して動作を実行する。この場合のApproachTarget行動のサブツリーを図14に示す。
 なお、上述と同様に、本実施の形態では、1つのスキーマによる単純な行動と比較してこのような複雑な行動を、特定の状況に適するようにスキーマを組み換えることなく、子供スキーマの接続パターンを規定するのみで実現することができる。
 また、ApproachTarget行動のサブツリーでは、ANDタイプパターンで接続された子供スキーマは、全て同じフォーカスを有する必要がある。親スキーマであるApproachTargetスキーマが、子供スキーマであるTrackingスキーマ及びApproachスキーマのフォーカスとして、ターゲットTを設定した例を図15に示す。この場合、ロボット装置1は、図16に示すように、ターゲットTをトラッキングしながらターゲットTに向かって歩く行動を行う。
 続いて、Dialogueスキーマは、Trackingスキーマ及びChatスキーマの親スキーマであり、この3つのスキーマによりDialogue行動のサブツリーが構成される。このDialogue行動のサブツリーにおける子供スキーマの接続関係はANDタイプパターンであり、上述したApproachTarget行動のサブツリーと同様であるため、詳細な説明を省略する。
 前述したように、本実施の形態における具体例は、人間が誰か他人と話したいときの行動を模したものであり、ロボット装置1の行動を、SearchTarget行動、ApproachTarget行動及びDialogue行動のサブツリーで構成している。この複雑な行動についてもある接続パターン、すなわち連続して実行されるような接続パターンを有する必要がある。つまり、会話をするためには、その人物がロボット装置1から所定距離内にいる必要があり、その人物の近くにいるためには、ロボット装置1はその人物に近づく必要がある。そして、その人物は、環境中にいる必要があり、ロボット装置1は、その人物を探さなければならない。言い換えれば、ある人物と会話するという全体の行動は、
 (a)パートナー(ターゲット)を探し、
 (b)そのパートナー(ターゲット)に近づき、
 (c)そのパートナー(ターゲット)と話す(会話する)
という単純な行動の連続として記述される。本明細書では、このような接続パターンをSEQUENCEタイプパターン(SEQUENCEポリシー)と呼ぶ。この場合の全体の行動のツリー構造を図17に示す。このSEQUENCEタイプパターンでは、現在の状況に応じた異なる時点から行動を開始することができる。例えば、会話する人物が既にロボット装置1の近くにいる場合には、ApproachTarget行動を省略することができる。
 なお、以上説明したORタイプパターン、ANDタイプパターン及びSEQUENCEタイプパターンといった接続パターンは一例であり、この例に限定されるものではない。
 ところで、同じスキーマは、あるツリー構造においてはターミナルノードとなり、別のツリー構造においてはハブノードとなることができる。スキーマのインターフェイスは、スキーマからデータや制御信号といった情報を送り、異なる状況を自動的に処理する。
 各スキーマは、子供スキーマがあればそれを検出し、特定の制御パターンを規定するようにデザインすることもでき、また、“純粋な”ターミナルノードとしてデザインすることもできる。後者の場合、子供スキーマが配設されると、デフォルトの制御パターン、例えばORタイプパターンが用いられる。
 具体的にApproachTarget行動のサブツリーを例にとり、どのようにしてターミナルスキーマ、例えばApproachスキーマがあるツリー構造中でハブスキーマとなるかについて説明する。上述したように、Approachスキーマは、ターゲットに向かって歩く行動を行うスキーマであり、ターゲットとなる例えば環境中の人物が所定の距離以内となるまで、その人物に向かって歩く。しかしながら、このような行動では、ターゲットまでの経路上にある障害物について考慮していないため、障害物とぶつかり、ターゲットに辿り着けないという問題が発生する可能性がある。
 そこで、ロボット装置1のパフォーマンスを向上させるために、障害物を避ける行動を行うNavigationスキーマを配設することができる。このNavigationスキーマは、方向をナビゲートする行動を行うスキーマであり、ロボット装置1が進む方向の障害物を調べ、障害物が検出された場合に代替経路、例えば障害物を迂回する経路を示す。このNavigationスキーマは、Approachスキーマの子供スキーマとして配設することができ、Approachスキーマをデザインし直す必要はない。Approachスキーマがデフォルトの制御パターン、例えばORタイプパターンでNavigationスキーマを接続するのみで、ApproachスキーマとNavigationスキーマとが協調して動作することができるようになる。この場合のApproachTarget行動のサブツリーを図18に示す。この結果、ロボット装置1は、図19に示すように、Trackingスキーマの動作によって特定の人物をトラッキングし、同時に、Approachスキーマの動作によってその人物の方向に向かって歩く。そして、障害物Obが検出された場合には、ロボット装置1は、Navigationスキーマによってその障害物Obを例えば迂回する。
 このように、本実施の形態における状況依存行動階層(SBL)58は、複数のスキーマが階層的に連結されたツリー構造として構成され、各スキーマが独自の行動を実行できるように独立性が高められているため、ツリー構造の組み換えが容易である。この際、親スキーマは、例えば上述したORタイプパターン、ANDタイプパターン及びSEQUENCEタイプパターンのように、子供スキーマの接続パターンを規定することができ、発現する行動パターンを変化させることができる。
 また、各スキーマの独立性が高められていることから、スキーマを書き換えることなく新たな子供スキーマを追加することができ、これによりロボット装置に新たな動作或いは機能を追加することができる。
 続いて、親スキーマによる子供スキーマの制御について、図面を用いてさらに詳細に説明する。
上述の通り、親スキーマは、図示しない記憶手段に記憶された接続パターンに基づいて、自身に接続された子供スキーマを制御するが、子供スキーマと共通の情報(後述する実行要求度AL及びリソースの情報)をやりとりすることで、行動の開始及び終了等についてもその接続パターンに応じて制御することができる。この制御は、基本的には図20に示すようなものである。すなわち、先ず子供スキーマS1,S2,S3が外部刺激及び内部状態に基づいて算出した自身の行動の実行要求度ALと必要なリソースとを親スキーマS0に伝達し、親スキーマS0は、この受け取った情報と自身の情報(実行要求度AL及びリソース)とを統合してさらに上位の親スキーマSPに伝達する。そして、親スキーマSPは、行動に必要な実行権とリソースとを親スキーマS0に伝達し、親スキーマS0は、自身に必要なリソースを除いてから、残りのリソースを子供スキーマS1,S2,S3に分配する。このように、共通の情報をやりとりすることにより、親スキーマは、子供スキーマの内容を知らなくても子供スキーマを制御することができる。
 具体的に、先ず図21に示すようなORタイプパターンの場合を考える。図21に示すSearchTargetスキーマは、LookForスキーマ、LookToスキーマ及びUtterスキーマの親スキーマであり、この4つのスキーマによりSearchTarget行動のサブツリーが構成される。LookForスキーマは、探索行動(何かを探す行動)を行うスキーマであり、例えば人物の顔を視覚的に探索する。このスキーマは、環境中をスキャンしてターゲットを探すために、ロボット装置1の頭部ユニット3を用いる。LookToスキーマは、音に振り向く行動(音の方向を見る行動)を行うスキーマであり、例えば声が聞こえたときに、頭部ユニット3をその声の方向に向ける。Utterスキーマは、例えばターゲットを探していることを示す言葉(「どこかな?」など)等を発するスキーマであり、スピーカ等の音声出力装置を用いる。
 この図21に示すサブツリーにおいて、LookForスキーマ、LookToスキーマ及びUtterスキーマは、それぞれ自身の実行要求度ALとリソース(頭部ユニット、スピーカ等)とをSearchTargetスキーマに伝達し、SearchTargetスキーマは、それらの情報を統合してさらに上位のスキーマに伝達する。そして、上位のスキーマから実行権とリソースとが伝達されると、SearchTargetスキーマは、これらを子供スキーマに分配する。
 このとき、LookForスキーマとLookToスキーマとは、必要なリソースが競合しているため、SearchTargetスキーマは、この2つのスキーマのうち、実行要求度ALが大きいスキーマに対してリソースを分配する。例えば、通常の状態であれば、LookForスキーマの方がLookToスキーマよりも実行要求度ALが大きくなるため、LookForスキーマにリソースが分配される。この結果、ロボット装置1は、言葉を発しながら探索行動を行うことになる。一方、何か声を掛けられた場合や音がした場合等には、LookToスキーマの方がLookForスキーマよりも実行要求度ALが大きくなるため、LookToスキーマにリソースが分配される。この結果、ロボット装置1は、言葉を発しながら音に振り向く行動を行うことになる。
 以上示したORタイプパターンでは、LookForスキーマ、LookToスキーマ及びUtterスキーマの全てを同時に実行させる必要はないため、サブツリーの開始条件は、
 (a)SearchTargetスキーマが起動できること、
 (b)LookForスキーマ、LookToスキーマ及びUtterスキーマの少なくとも1つのスキーマの実行要求度ALが0よりも大きいこと、
 (c)LookForスキーマ、LookToスキーマ及びUtterスキーマのうち、実行要求度ALが0よりも大きいスキーマの少なくとも1つのスキーマにリソースを分配できること
となる。
 また、ORタイプパターンでは、LookForスキーマ、LookToスキーマ及びUtterスキーマの何れかが実行されていればよいため、サブツリーの終了条件は、
 (d)SearchTargetスキーマ、LookForスキーマ、LookToスキーマ及びUtterスキーマの全てが成功又は失敗により終了していること
となる。したがって、LookToスキーマの実行中にターゲットを見失った場合であっても、サブツリーは終了せず、再びLookForスキーマによりターゲットを探す行動を行う。
 次に、図14に示したようなANDタイプパターンの場合を考える。図14に示したApproachTargetスキーマは、Trackingスキーマ及びApproachスキーマの親スキーマであり、この3つのスキーマによりApproachTarget行動のサブツリーが構成される。Trackingスキーマは、ターゲットの位置をトラッキングし、又はその動きの経路を観察し、ターゲットの方向に顔(頭)を向ける。Approachスキーマは、ターゲットに向かって歩く行動を行うスキーマであり、ターゲットとなる例えば環境中の人物が所定の距離以内となるまで、その人物に向かって歩く。
 この図14に示したサブツリーにおいて、Trackingスキーマ及びApproachスキーマは、それぞれ自身の実行要求度ALとリソース(頭部ユニット、脚部ユニット等)とをApproachTargetスキーマに伝達し、ApproachTargetスキーマは、それらの情報を統合してさらに上位のスキーマに伝達する。そして、上位のスキーマから実行権とリソースとが伝達されると、ApproachTargetスキーマは、これらをTrackingスキーマ及びApproachスキーマに分配する。
 このとき、Trackingスキーマ及びApproachスキーマは同時に実行する必要があるため、Trackingスキーマ及びApproachスキーマに必要なリソースの何れか一方でも足りない場合には、ApproachTargetスキーマに対して上位のスキーマからリソースが伝達されない。
 以上示したANDタイプパターンでは、Trackingスキーマ及びApproachスキーマを同時に実行させる必要があるため、サブツリーの開始条件は、
 (a)ApproachTargetスキーマが起動できること、
 (b)Trackingスキーマ及びApproachスキーマのそれぞれの実行要求度ALが0よりも大きいこと、
 (c)Trackingスキーマ及びApproachスキーマのそれぞれにリソースを分配できること
となる。
 また、ANDタイプパターンでは、Trackingスキーマ及びApproachスキーマの両方が実行されている必要があるため、サブツリーの終了条件は、
 (d)Trackingスキーマ及びApproachスキーマの少なくとも1つのスキーマが成功又は失敗により終了したこと
となる。したがって、障害物等によりターゲットに対してそれ以上進めなくなった場合、Approachスキーマは失敗終了するが、この場合、ApproachTargetスキーマはTrackingスキーマについても終了させる。
 ここで、上述したORタイプパターン及びANDタイプパターンでは、各子供スキーマが並列の関係にあったが、子供スキーマのうち何れか1つのスキーマをメインスキーマとし、サブツリー全体の結果をこのメインスキーマに依存させるようにしても構わない。本明細書では、このような接続パターンをDependOnタイプパターン(DependOnポリシー)と呼ぶ。
 具体的に、図22に示すDependOnタイプパターンの場合を考える。図22に示すKickTargetスキーマは、Trackingスキーマ及びKickスキーマの親スキーマであり、この3つのスキーマによりKickTarget行動のサブツリーが構成される。Trackingスキーマは、ターゲットの位置をトラッキングし、又はその動きの経路を観察し、ターゲットの方向に体全体を向ける。Kickスキーマは、ターゲットを蹴る行動を行うスキーマであり、ターゲットとなる例えば環境中のボールを蹴る。
 この図22に示すサブツリーにおいて、Trackingスキーマ及びKickスキーマは、それぞれ自身の実行要求度ALとリソース(頭部ユニット、脚部ユニット等)とをKickTargetスキーマに伝達する。また、Kickスキーマは、自身がメインスキーマであるという情報をKickTargetスキーマに伝達する。そして、KickTargetスキーマは、それらの情報を統合してさらに上位のスキーマに伝達する。上位のスキーマから実行権とリソースとが伝達されると、KickTargetスキーマは、これらをTrackingスキーマ及びKickスキーマに分配する。
 このとき、Trackingスキーマ及びKickスキーマのうち、少なくともKickスキーマを実行する必要があるため、Kickスキーマに必要なリソースが足りない場合には、KickTargetスキーマに対して上位のスキーマからリソースが伝達されない。
 以上示したDependOnタイプパターンでは、Trackingスキーマ及びKickスキーマのうち、少なくともKickスキーマを実行させる必要があるため、サブツリーの開始条件は、
 (a)KickTargetスキーマが起動できること、
 (b)Trackingスキーマ及びKickスキーマのうち、少なくともKickスキーマの実行要求度ALが0よりも大きいこと、
 (c)Trackingスキーマ及びKickスキーマのうち、少なくともKickスキーマにリソースを分配できること
となる。
 また、DependOnタイプパターンでは、サブツリー全体の結果がメインスキーマであるKickスキーマに依存しているため、サブツリーの終了条件は、
 (d)KickTargetスキーマ及びKickスキーマが成功又は失敗により終了したこと
となる。したがって、ターゲットを蹴ってKickスキーマが成功終了した場合、KickTargetスキーマはTrackingスキーマについても終了させる。
 続いて、サッカーの行動を例とし、
 (a)ボール(ターゲット)を探し、
 (b)ボール(ターゲット)に近づき、
 (c)そのボール(ターゲット)を蹴る
という行動全体のツリー構造を図23に示す。図23において、Rootスキーマは、KickTargetスキーマをメインスキーマとするDependOnタイプパターンをとる。また、KickTargetスキーマは、図22と同様に、KickスキーマをメインスキーマとするDependOnタイプパターンをとる。
 この図23に示すツリーにおいては、SearchTargetスキーマのサブツリーによってボールを探し、ApproachTargetスキーマのサブツリーによってボールが所定の距離になるまで近づく。そして、KickTargetスキーマのサブツリーによってボールを蹴り、ツリーが終了する。ここで、ボールを探し、ボールに近づく途中でボールを見失った場合、ApproachTargetスキーマは失敗終了するが、メインスキーマであるKickTargetスキーマが終了していないため、ツリーとしては終了しない。この場合には、再びSearchTargetスキーマのサブツリーが実行され、ボールを探すというリカバリー行動を行うことができる。
 以上説明したように、本実施の形態における状況依存行動階層(SBL)58は、複数のスキーマが階層的に連結されたツリー構造として構成され、複雑な行動を実現することができる一方で、各スキーマが独自の行動を実行できるように独立性(モジュラリティ)が高められているため、ツリー構造の組み換えが容易であり、スキーマ間で共通の情報をやりとりし、さらに親スキーマと子供スキーマとの接続関係を規定することにより、スキーマの記述を簡略化することができる。
 つまり、親スキーマに子供スキーマの制御に必要な情報・機能を全て記述することは、スキーマのツリー構造が複雑になった場合には困難であり、特にツリー構造内で子供スキーマを制御するスキーマの方が子供スキーマの数よりも多くなってしまう虞がある。
 これに対して、上述した本実施の形態では、やりとりする情報を共通化することでスキーマの独立性を担保し、ユニット(ツリー構造)の組み換えを容易とすることができる。さらに、複数のスキーマが共通にできることを抽出して幾つかの接続パターンを作ることで、スキーマの記述を簡略化することができる。
 なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
 例えば、上述の実施の形態では、2足歩行の脚式移動ロボットに関して説明したが、ロボット装置は、外部環境及び内部状態に応じて動作するものであれば適用可能であり、移動手段も2足歩行、さらには脚式移動方式に限定されない。
 以上説明した本発明によれば、木構造形式に構成された複数の行動モジュールのうち、上位の行動モジュールが、記憶手段に記憶された制御ポリシーに基づいて、自身に接続された一以上の行動モジュールを制御するため、各行動モジュールの独立性を高めることができ、したがって行動モジュールの木構造を組み換えてロボット装置の行動のデザイン変更を行うことが容易に実現できる。
本実施の形態におけるロボット装置の外観構成を示す斜視図である。 同ロボット装置の自由度構成モデルを模式的に示す図である。 同ロボット装置の回路構成を示すブロック図である。 同ロボット装置の行動制御システムの基本アーキテクチャを示す図である。 同行動制御システムのオブジェクト構成を模式的に示す図である。 同行動制御システムの状況依存行動階層による状況依存行動制御の形態を模式的に示す図である。 同状況依存行動階層が複数のスキーマによって構成されている様子を模式的に示す図である。 同状況依存行動階層におけるスキーマのツリー構造を模式的に示す図である。 同ツリー構造に各スキーマ毎のフォーカス情報を追加した様子を示す図である。 Trackingスキーマ及びApproachスキーマが、それぞれ異なるターゲットをフォーカスとした場合のApproachTarget行動のサブツリー構造を示す図である。 Trackingスキーマ及びApproachスキーマが、それぞれ異なるターゲットをフォーカスとした場合のロボット装置の行動を模式的に示す図である。 ApproachTargetスキーマが、Trackingスキーマ及びApproachスキーマに対して同じフォーカスを設定した場合のApproachTarget行動のサブツリー構造を示す図である。 子供スキーマがORタイプパターンで接続された場合のSearchTarget行動のサブツリー構造を示す図である。 子供スキーマがANDタイプパターンで接続された場合のApproachTarget行動のサブツリー構造を示す図である。 ApproachTargetスキーマが、子供スキーマに対して同じフォーカスを設定した場合のApproachTarget行動のサブツリー構造を示す図である。 ApproachTargetスキーマが、子供スキーマに対して同じフォーカスを設定した場合のロボット装置の行動を模式的に示す図である。 SearchTargetスキーマ、ApproachTargetスキーマ及びDialogueスキーマがSEQUENCEタイプパターンで接続された場合のツリー構造を示す図である。 Approachスキーマの下位にNavigationスキーマが配設された場合のApproachTarget行動のサブツリー構造を示す図である。 Approachスキーマの下位にNavigationスキーマが配設された場合のロボット装置の行動を模式的に示す図である。 スキーマ間での情報のやりとりを示す図である。 子供スキーマがORタイプパターンで接続された場合のSearchTarget行動のサブツリー構造を示す図である。 子供スキーマがDependOnタイプパターンで接続された場合のApproachTarget行動のサブツリー構造を示す図である。 SearchTargetスキーマ、ApproachTargetスキーマ及びKickTargetスキーマがDependOnタイプパターンで接続された場合のツリー構造を示す図である。
符号の説明
 1 ロボット装置、2 体幹部ユニット、3 頭部ユニット、4R/L 腕部ユニット、5R/L 脚部ユニット、50 行動制御システム、51 視覚認識機能部、52 聴覚認識機能部、53 接触認識機能部、54 内部状態管理部、55 短期記憶部、56 長期記憶部、57 熟考行動階層、58 状況依存行動階層、59 反射行動部、60 ハードウェア依存行動制御部、61 外部環境

Claims (22)

  1.  可動部を有するロボット装置において、
     上記可動部を制御する可動部制御手段と、
     上記ロボット装置の機体動作を記述する複数の行動モジュールが木構造形式に構成された行動決定手段とを備え、
     上記行動モジュールは、自身に接続される一以上の下位の行動モジュールの制御ポリシーを記憶した記憶手段を有し、
     上記一以上の下位の行動モジュールが接続される上位の行動モジュールは、上記制御ポリシーに基づいて、上記一以上の下位の行動モジュールを制御し、
     上記可動部制御手段は、上記上位の行動モジュール又は上記一以上の下位の行動モジュールが決定した行動に基づいて、上記可動部を制御する
     ことを特徴とするロボット装置。
  2.  上記行動モジュールは、外部刺激又は内部状態の変化に応じた状況判断を行うモニター機能と、行動実行に伴う状態遷移を実現するアクション機能とを備えたスキーマであることを特徴とする請求項1記載のロボット装置。
  3.  上記制御ポリシーは、上記一以上の下位の行動モジュールを独自に実行させるものであることを特徴とする請求項1記載のロボット装置。
  4.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、少なくとも1つの行動モジュールが実行可能である場合に、上記一以上の下位の行動モジュールを実行させるように制御することを特徴とする請求項3記載のロボット装置。
  5.  上記制御ポリシーは、上記一以上の下位の行動モジュールを同時に実行させるものであることを特徴とする請求項1記載のロボット装置。
  6.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、全ての行動モジュールが実行可能である場合に、上記一以上の下位の行動モジュールを実行させるように制御することを特徴とする請求項5記載のロボット装置。
  7.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、一の行動モジュールの実行が終了した場合に、他の行動モジュールの実行を停止させるように制御することを特徴とする請求項5記載のロボット装置。
  8.  上記制御ポリシーは、上記一以上の下位の行動モジュールのうち、一の行動モジュールをメインの行動モジュールとして実行させるものであることを特徴とする請求項1記載のロボット装置。
  9.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、少なくとも上記メインの行動モジュールが実行可能である場合に、上記一以上の下位の行動モジュールを実行させるように制御することを特徴とする請求項8記載のロボット装置。
  10.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、上記メインの行動モジュールの実行が終了した場合に、他の行動モジュールの実行を停止させるように制御することを特徴とする請求項8記載のロボット装置。
  11.  上記制御ポリシーは、上記一以上の下位の行動モジュールを所定の順序で実行させるものであることを特徴とする請求項1記載のロボット装置。
  12.  可動部を有するロボット装置の行動制御方法において、
     上記ロボット装置の機体動作を記述する複数の行動モジュールが、上位の行動モジュールに一以上の下位の行動モジュールが接続される木構造形式に構成されており、
     上記上位の行動モジュールが、記憶手段に記憶された制御ポリシーに基づいて、上記一以上の下位の行動モジュールを制御するステップと、
     上記上位の行動モジュール又は上記一以上の下位の行動モジュールが決定した行動に基づいて、上記可動部を制御するステップと
     を有することを特徴とする行動制御方法。
  13.  上記行動モジュールは、外部刺激又は内部状態の変化に応じた状況判断を行うモニター機能と、行動実行に伴う状態遷移を実現するアクション機能とを備えたスキーマであることを特徴とする請求項12記載の行動制御方法。
  14.  上記制御ポリシーは、上記一以上の下位の行動モジュールを独自に実行させるものであることを特徴とする請求項12記載の行動制御方法。
  15.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、少なくとも1つの行動モジュールが実行可能である場合に、上記一以上の下位の行動モジュールを実行させるように制御することを特徴とする請求項14記載の行動制御方法。
  16.  上記制御ポリシーは、上記一以上の下位の行動モジュールを同時に実行させるものであることを特徴とする請求項12記載の行動制御方法。
  17.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、全ての行動モジュールが実行可能である場合に、上記一以上の下位の行動モジュールを実行させるように制御することを特徴とする請求項16記載の行動制御方法。
  18.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、一の行動モジュールの実行が終了した場合に、他の行動モジュールの実行を停止させるように制御することを特徴とする請求項16記載の行動制御方法。
  19.  上記制御ポリシーは、上記一以上の下位の行動モジュールのうち、一の行動モジュールをメインの行動モジュールとして実行させるものであることを特徴とする請求項12記載の行動制御方法。
  20.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、少なくとも上記メインの行動モジュールが実行可能である場合に、上記一以上の下位の行動モジュールを実行させるように制御することを特徴とする請求項19記載の行動制御方法。
  21.  上記上位の行動モジュールは、上記一以上の下位の行動モジュールのうち、上記メインの行動モジュールの実行が終了した場合に、他の行動モジュールの実行を停止させるように制御することを特徴とする請求項19記載の行動制御方法。
  22.  上記制御ポリシーは、上記一以上の下位の行動モジュールを所定の順序で実行させるものであることを特徴とする請求項12記載の行動制御方法。
JP2003309262A 2002-09-02 2003-09-01 ロボット装置及びその行動制御方法 Expired - Fee Related JP4449372B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003309262A JP4449372B2 (ja) 2002-09-02 2003-09-01 ロボット装置及びその行動制御方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002257097 2002-09-02
JP2003309262A JP4449372B2 (ja) 2002-09-02 2003-09-01 ロボット装置及びその行動制御方法

Publications (2)

Publication Number Publication Date
JP2004114285A true JP2004114285A (ja) 2004-04-15
JP4449372B2 JP4449372B2 (ja) 2010-04-14

Family

ID=32301416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003309262A Expired - Fee Related JP4449372B2 (ja) 2002-09-02 2003-09-01 ロボット装置及びその行動制御方法

Country Status (1)

Country Link
JP (1) JP4449372B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009018411A (ja) * 2007-07-13 2009-01-29 Honda Research Inst Europe Gmbh ロボットを制御する方法および装置
KR101049743B1 (ko) * 2008-12-18 2011-07-19 한양대학교 산학협력단 로봇의 행동 선택 방법
JP2012066376A (ja) * 2010-09-22 2012-04-05 Gm Global Technology Operations Inc 1つ以上の人間型ロボットの同時経路検討
JP2019512402A (ja) * 2016-03-03 2019-05-16 マガジノ ゲーエムベーハー 行動ツリーアーキテクチャを有するロボットの制御プロセス
JP2019087047A (ja) * 2017-11-07 2019-06-06 富士通株式会社 制御プログラム、制御方法および制御装置
JP2019217122A (ja) * 2018-06-22 2019-12-26 カシオ計算機株式会社 ロボット、ロボットの制御方法及びプログラム
EP3690588A4 (en) * 2017-09-26 2021-02-17 Sony Corporation DEVICE AND PROCESS FOR PROCESSING INFORMATION, AND PROGRAM
CN113967913A (zh) * 2021-10-22 2022-01-25 中冶赛迪上海工程技术有限公司 一种抓钢装置的运动规划方法及系统
WO2023017732A1 (ja) * 2021-08-10 2023-02-16 本田技研工業株式会社 読み聞かせ情報作成装置、読み聞かせロボット、読み聞かせ情報作成方法、プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62199376A (ja) * 1986-02-26 1987-09-03 株式会社日立製作所 遠隔マニピユレ−シヨン方法及び装置
JPH08106320A (ja) * 1994-10-07 1996-04-23 Hitachi Ltd 自動機械及び自動機械の制御方法
JP2001334482A (ja) * 2000-03-24 2001-12-04 Sony Corp ロボット装置及びロボット装置の行動決定方法
JP2002160185A (ja) * 2000-03-31 2002-06-04 Sony Corp ロボット装置、ロボット装置の行動制御方法、外力検出装置及び外力検出方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62199376A (ja) * 1986-02-26 1987-09-03 株式会社日立製作所 遠隔マニピユレ−シヨン方法及び装置
JPH08106320A (ja) * 1994-10-07 1996-04-23 Hitachi Ltd 自動機械及び自動機械の制御方法
JP2001334482A (ja) * 2000-03-24 2001-12-04 Sony Corp ロボット装置及びロボット装置の行動決定方法
JP2002160185A (ja) * 2000-03-31 2002-06-04 Sony Corp ロボット装置、ロボット装置の行動制御方法、外力検出装置及び外力検出方法

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009018411A (ja) * 2007-07-13 2009-01-29 Honda Research Inst Europe Gmbh ロボットを制御する方法および装置
KR101049743B1 (ko) * 2008-12-18 2011-07-19 한양대학교 산학협력단 로봇의 행동 선택 방법
JP2012066376A (ja) * 2010-09-22 2012-04-05 Gm Global Technology Operations Inc 1つ以上の人間型ロボットの同時経路検討
US8731714B2 (en) 2010-09-22 2014-05-20 GM Global Technology Operations LLC Concurrent path planning with one or more humanoid robots
JP2019512402A (ja) * 2016-03-03 2019-05-16 マガジノ ゲーエムベーハー 行動ツリーアーキテクチャを有するロボットの制御プロセス
US11338434B2 (en) 2016-03-03 2022-05-24 Magazino Gmbh Controlling process of robots having a behavior tree architecture
EP3690588A4 (en) * 2017-09-26 2021-02-17 Sony Corporation DEVICE AND PROCESS FOR PROCESSING INFORMATION, AND PROGRAM
JP7009939B2 (ja) 2017-11-07 2022-02-10 富士通株式会社 制御プログラム、制御方法および制御装置
JP2019087047A (ja) * 2017-11-07 2019-06-06 富士通株式会社 制御プログラム、制御方法および制御装置
JP2019217122A (ja) * 2018-06-22 2019-12-26 カシオ計算機株式会社 ロボット、ロボットの制御方法及びプログラム
JP7180139B2 (ja) 2018-06-22 2022-11-30 カシオ計算機株式会社 ロボット、ロボットの制御方法及びプログラム
JP7476941B2 (ja) 2018-06-22 2024-05-01 カシオ計算機株式会社 ロボット、ロボットの制御方法及びプログラム
WO2023017732A1 (ja) * 2021-08-10 2023-02-16 本田技研工業株式会社 読み聞かせ情報作成装置、読み聞かせロボット、読み聞かせ情報作成方法、プログラム
CN113967913A (zh) * 2021-10-22 2022-01-25 中冶赛迪上海工程技术有限公司 一种抓钢装置的运动规划方法及系统
CN113967913B (zh) * 2021-10-22 2024-03-26 中冶赛迪上海工程技术有限公司 一种抓钢装置的运动规划方法及系统

Also Published As

Publication number Publication date
JP4449372B2 (ja) 2010-04-14

Similar Documents

Publication Publication Date Title
US7103447B2 (en) Robot apparatus, and behavior controlling method for robot apparatus
JP4396273B2 (ja) ロボット装置及びその制御方法
KR101137205B1 (ko) 로봇의 행동 제어 시스템 및 행동 제어 방법, 및 로봇 장치
US8145492B2 (en) Robot behavior control system and method, and robot apparatus
US7363108B2 (en) Robot and control method for controlling robot expressions
US6493606B2 (en) Articulated robot and method of controlling the motion of the same
US6556892B2 (en) Control device and control method for robot
JP4086024B2 (ja) ロボット装置及びその行動制御方法
JP3714268B2 (ja) ロボット装置
JP2005193331A (ja) ロボット装置及びその情動表出方法
JP2004110802A (ja) 環境同定装置、環境同定方法、プログラム及び記録媒体、並びにロボット装置
JP4179230B2 (ja) ロボット装置及びその動作制御方法
JP2007125631A (ja) ロボット装置及びその行動制御方法
JP3558222B2 (ja) ロボットの行動制御システム及び行動制御方法、並びにロボット装置
JP4449372B2 (ja) ロボット装置及びその行動制御方法
JP3925140B2 (ja) 情報提供方法及び情報提供装置、並びにコンピュータ・プログラム
JP2004302644A (ja) 顔識別装置、顔識別方法、記録媒体、及びロボット装置
JP4281286B2 (ja) ロボット装置及びその制御方法
JP2002059384A (ja) ロボットのための学習システム及び学習方法
JP2007125629A (ja) ロボット装置及びその行動制御方法
JP2003266352A (ja) ロボット装置及びロボット装置の制御方法
JP2002205290A (ja) 脚式移動ロボットの制御装置及び制御方法
JP2005321954A (ja) ロボット装置、情報処理システム及び情報処理方法、並びにコンピュータ・プログラム
JP2004209599A (ja) ロボット装置、ロボット装置の行動学習方法、ロボット装置の行動生成方法
JP2002331481A (ja) ロボット装置、動作作成装置及び動作作成方法、並びに、制御プログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091119

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

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

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

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140205

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees