(57)【要約】【課題】  ユーザ等の他の動作主体の動作に対して柔軟に対応してその動作と同調した動作を行い、さらにその同調関係を変化させる。【解決手段】  ロボット装置は、カメラ画像入力器を介して入力されたユーザの画像に応じて、ユーザの動作と同調したそれぞれ異なる動作を生成するモジュールＩ〜IIIを有する。身体制御器５１は、このモジュールＩ〜IIIからの出力値のうち何れか一以上の出力値を統合し、アクチュエータ５２を駆動する。音声認識器５４は、ユーザの言葉からユーザの情動状態を検出し、モジュール制御器５０は、この情動状態に応じて各モジュールの変調器２１，３６，４４を制御して各モジュールからの出力を変調させ、或いは身体制御器５１において統合する出力値を制御する。【選択図】  図４
2005342873.tif 000002
【特許請求の範囲】
【請求項１】
自律的に動作可能なロボット装置であって、
他の動作主体の動作を画像又は音声として入力する入力手段と、
上記入力手段を介して入力された画像又は音声に応じて、上記他の動作主体の動作と同調したそれぞれ異なる動作を生成する複数の動作生成手段と、
上記複数の動作生成手段によって生成された複数の動作のいずれか一以上の動作を統合して発現させる動作発現手段と、
上記動作発現手段において統合する動作の数、又は複数の動作を統合する際の各動作の割合を制御する制御手段と
を備えることを特徴とするロボット装置。
【請求項２】
上記複数の動作生成手段が生成する各動作を変調する複数の変調手段をさらに備え、
上記制御手段は、上記複数の変調手段による変調処理を制御する
ことを特徴とする請求項１記載のロボット装置。
【請求項３】
上記動作生成手段は、
上記入力された画像又は音声に応じた動作を生成する第１の動作生成部と、
上記入力された画像又は音声に応じて学習を行い、学習結果に基づいて動作を生成する第２の動作生成部と、
上記第１の動作生成部で生成された動作と上記第２の動作生成部で生成された動作とを線形加算する動作加算部と
を有することを特徴とする請求項１記載のロボット装置。
【請求項４】
上記動作加算部は、上記第２の動作生成部における学習度合いに従って、又は時間経過に従って、上記第１の動作生成部で生成された動作と上記第２の動作生成部で生成された動作との割合を変化させることを特徴とする請求項３記載のロボット装置。
【請求項５】
上記他の動作主体の状態を検出する状態検出手段をさらに備え、
上記制御手段は、上記他の動作主体の状態に応じて、上記動作発現手段において統合する動作の数若しくは複数の動作を統合する際の各動作の割合、及び／又は上記複数の変調手段による変調処理を制御する
ことを特徴とする請求項２記載のロボット装置。
【請求項６】
上記他の動作主体は、該ロボット装置のユーザであり、
上記状態検出手段は、該ユーザの情動状態を検出する
ことを特徴とする請求項５記載のロボット装置。
【請求項７】
自律的に動作可能なロボット装置の動作制御方法であって、
他の動作主体の動作を画像又は音声として入力する入力工程と、
上記入力工程にて入力された画像又は音声に応じて、上記他の動作主体の動作と同調したそれぞれ異なる動作を生成する複数の動作生成工程と、
上記複数の動作生成工程にて生成された複数の動作のいずれか一以上の動作を統合して発現させる動作発現工程と、
上記動作発現工程にて統合する動作の数、又は複数の動作を統合する際の各動作の割合を制御する制御工程と
を有することを特徴とするロボット装置の動作制御方法。
【請求項８】
上記複数の動作生成工程にて生成される各動作を変調する複数の変調工程をさらに有し、
上記制御工程では、上記複数の変調工程における変調処理を制御する
ことを特徴とする請求項７記載のロボット装置の動作制御方法。
【請求項９】
上記動作生成工程は、
上記入力された画像又は音声に応じた動作を生成する第１の動作生成ステップと、
上記入力された画像又は音声に応じて学習を行い、学習結果に基づいて動作を生成する第２の動作生成ステップと、
上記第１の動作生成ステップにて生成された動作と上記第２の動作生成ステップにて生成された動作とを線形加算する動作加算ステップと
を有することを特徴とする請求項７記載のロボット装置の動作制御方法。
【請求項１０】
上記動作加算ステップでは、上記第２の動作生成ステップにおける学習度合いに従って、又は時間経過に従って、上記第１の動作生成ステップにて生成された動作と上記第２の動作生成ステップにて生成された動作との割合を変化させることを特徴とする請求項９記載のロボット装置の動作制御方法。
【請求項１１】
上記他の動作主体の状態を検出する状態検出工程をさらに有し、
上記制御工程では、上記他の動作主体の状態に応じて、上記動作発現工程にて統合する動作の数若しくは複数の動作を統合する際の各動作の割合、及び／又は上記複数の変調工程における変調処理を制御する
ことを特徴とする請求項８記載のロボット装置の動作制御方法。
【請求項１２】
上記他の動作主体は、上記ロボット装置のユーザであり、
上記状態検出工程では、該ユーザの情動状態を検出する
ことを特徴とする請求項１１記載のロボット装置の動作制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律的に動作可能なロボット装置及びその動作制御方法に関し、特にユーザ等の他の動作主体の動作と同調した動作を行うロボット装置及びその動作制御方法に関する。
【背景技術】
【０００２】
電気的又は磁気的な作用を用いて人間（生物）の動作に似た運動を行う機械装置を「ロボット」という。我が国においてロボットが普及し始めたのは、１９６０年代末からであるが、その多くは、工場における生産作業の自動化・無人化等を目的としたマニピュレータや搬送ロボット等の産業用ロボット（Industrial Robot）であった。
【０００３】
最近では、人間のパートナーとして生活を支援する、すなわち住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットの開発が進められている。このような実用ロボットは、産業用ロボットとは異なり、人間の生活環境の様々な局面において、個々に個性の相違した人間、又は様々な環境への適応方法を自ら学習する能力を備えている。例えば、犬、猫のように４足歩行の動物の身体メカニズムやその動作を模した「ペット型」ロボット、或いは、２足直立歩行を行う人間等の身体メカニズムや動作をモデルにしてデザインされた「人間型」又は「人間形」ロボット（Humanoid Robot）等のロボット装置は、既に実用化されつつある。これらのロボット装置は、産業用ロボットと比較して、エンターテインメント性を重視した様々な動作を行うことができるため、エンターテインメントロボットと称される場合もある。
【０００４】
ところで、このようなエンターテインメントロボットにおける最重要課題の１つとして、ユーザを飽きさせない仕組みの追及が挙げられる。しかしながら、人間が飽きる現象の仕組みが未だ解明されていない現状では完全に飽きさせない仕組みを用意することが困難であるため、ユーザが興味を持てるような仕組みを予め数多く作り込んでおく方法がとられる。
【０００５】
ここで、そのような仕組みの例として、ユーザの音声や動作と同調した動作をロボット装置に行わせることが提案されている（例えば特許文献１、非特許文献１を参照）。
【０００６】
【特許文献１】特開２００１−２４６１７４号公報
【非特許文献１】Masato Ito, Jun Tani,“On-line Imitative Interaction with a Humanoid Robot Using a Mirror Neuron Model”, IEEE International Conference on Robotics and Automation (2004, in press)
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記特許文献１に記載の技術では、音声に応じた頷き動作、瞬き動作、或いは身振り動作といった引き込み（同調）現象を発生させる仕組みをロボット装置等の擬似聞き手に内蔵しておくことによって、ユーザを会話に引き込む現象を実現することができる。しかしながら、この特許文献１記載の技術で用いられている同調の仕組みは、柔軟な学習能力を有さないため、人間とロボット装置との間の様々なインタラクションに柔軟に対応することが難しいという問題があった。また、予め内蔵された仕組みに基づく同調関係を変化させることができないため、人間とのインタラクションに用いた場合には、次第に飽きられてしまう可能性があると考えられる。
【０００８】
一方、上記非特許文献１に記載の技術では、パラメトリックバイアス付きのリカレント型ニューラルネットワーク（ＲＮＮ）を用いることで、同調の仕組みを学習することができる。すなわち、見まねを通じて得られた関節角時系列データを学習することで動作モデルを構築することができ、さらに学習後のＲＮＮを用いることでロボット装置の動作をユーザの動作に同調させることができる。しかしながら、この非特許文献１記載の技術では、基本的な同調関係しか構築することができず、複雑な同調関係を扱うのは難しいという問題があった。また、ＲＮＮを用いた同調関係を変化させることができないため、人間とのインタラクションに用いた場合には、次第に飽きられてしまう可能性があると考えられる。
【０００９】
本発明は、このような従来の実情に鑑みて提案されたものであり、ユーザ等の他の動作主体の動作に対して柔軟に対応してその動作と同調した動作を行い、さらにその同調関係を変化させることが可能なロボット装置及びその動作制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した目的を達成するために、本発明に係るロボット装置は、自律的に動作可能なロボット装置であって、他の動作主体の動作を画像又は音声として入力する入力手段と、上記入力手段を介して入力された画像又は音声に応じて、上記他の動作主体の動作と同調したそれぞれ異なる動作を生成する複数の動作生成手段と、上記複数の動作生成手段によって生成された複数の動作のいずれか一以上の動作を統合して発現させる動作発現手段と、上記動作発現手段において統合する動作の数、又は複数の動作を統合する際の各動作の割合を制御する制御手段とを備えることを特徴とする。
【００１１】
ここで、本発明に係るロボット装置は、上記複数の動作生成手段が生成する各動作を変調する複数の変調手段をさらに備えるようにしてもよく、この場合、上記制御手段は、上記複数の変調手段による変調処理をも制御する。
【００１２】
また、上述した目的を達成するために、本発明に係るロボット装置の動作制御方法は、自律的に動作可能なロボット装置の動作制御方法であって、他の動作主体の動作を画像又は音声として入力する入力工程と、上記入力工程にて入力された画像又は音声に応じて、上記他の動作主体の動作と同調したそれぞれ異なる動作を生成する複数の動作生成工程と、上記複数の動作生成工程にて生成された複数の動作のいずれか一以上の動作を統合して発現させる動作発現工程と、上記動作発現工程にて統合する動作の数、又は複数の動作を統合する際の各動作の割合を制御する制御工程とを有することを特徴とする。
【発明の効果】
【００１３】
本発明に係るロボット装置及びその動作制御方法によれば、ユーザ等の他の動作主体の動作と同調したそれぞれ異なる動作を生成する複数の動作生成手段を有し、生成された複数の動作のいずれか一以上の動作を統合して発現させるようにしているため、他の動作主体の動作と同調した動作を行う際に、複雑な同調関係を扱うことが可能とされる。また、複数の動作生成手段が生成する各動作を変調するのに加えて、さらに動作発現手段において統合する動作の数、又は複数の動作を統合する際の各動作の割合を制御することにより、ユーザ等の他の動作主体をより飽きさせない動作を実現することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、本能や感情といった情動をモデル化した情動モデルを有する２足歩行タイプのロボット装置に適用したものである。このロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、人間が行う基本的な動作を表出できるエンターテインメントロボットでもある。以下では先ず、このようなロボット装置の構成について説明し、次いで、このロボット装置の動作制御方法について詳細に説明する。
【００１５】
（１）ロボット装置の構成
先ず、本実施の形態におけるロボット装置の構成について説明する。図１に示すように、本実施の形態におけるロボット装置１は、体幹部ユニット２の所定の位置に頭部ユニット３が連結されると共に、左右２つの腕部ユニット４Ｒ／Ｌと、左右２つの脚部ユニット５Ｒ／Ｌが連結されて構成されている（但し、Ｒ及びＬの各々は、右及び左の各々を示す接尾辞である。以下において同じ。）。
【００１６】
このロボット装置１が具備する関節自由度構成を図２に模式的に示す。頭部ユニット３を支持する首関節は、首関節ヨー軸１０１と、首関節ピッチ軸１０２と、首関節ロール軸１０３という３自由度を有している。
【００１７】
また、上肢を構成する各々の腕部ユニット４Ｒ／Ｌは、肩関節ピッチ軸１０７と、肩関節ロール軸１０８と、上腕ヨー軸１０９と、肘関節ピッチ軸１１０と、前腕ヨー軸１１１と、手首関節ピッチ軸１１２と、手首関節ロール軸１１３と、手部１１４とで構成される。手部１１４は、実際には、複数本の指を含む多関節・多自由度構造体である。但し、手部１１４の動作は、ロボット装置１の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部ユニット４Ｒ／Ｌは、７自由度で構成される。
【００１８】
また、体幹部ユニット２は、体幹ピッチ軸１０４と、体幹ロール軸１０５と、体幹ヨー軸１０６という３自由度を有する。
【００１９】
また、下肢を構成する各々の脚部ユニット５Ｒ／Ｌは、股関節ヨー軸１１５と、股関節ピッチ軸１１６と、股関節ロール軸１１７と、膝関節ピッチ軸１１８と、足首関節ピッチ軸１１９と、足首関節ロール軸１２０と、足部１２１とで構成される。本明細書中では、股関節ピッチ軸１１６と股関節ロール軸１１７の交点は、ロボット装置１の股関節位置を定義する。人体の足部は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置１の足部１２１は、ゼロ自由度とする。したがって、各脚部ユニット５Ｒ／Ｌは、６自由度で構成される。
【００２０】
以上を総括すれば、ロボット装置１全体としては、合計で３＋７×２＋３＋６×２＝３２自由度を有することになる。但し、エンターテインメント向けのロボット装置１が必ずしも３２自由度に限定される訳ではない。設計・制作上の制約条件や要求仕様等に応じて、自由度すなわち関節数を適宜増減することができることはいうまでもない。
【００２１】
上述したようなロボット装置１が持つ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、２足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
【００２２】
図３には、ロボット装置１の制御システム構成を模式的に示している。図３に示すように、制御システムは、ユーザ入力などに動的に反応して情緒判断や感情表現を司る思考制御モジュール２００と、アクチュエータ３５０の駆動などロボット装置１の全身協調運動を制御する運動制御モジュール３００とで構成される。
【００２３】
思考制御モジュール２００は、情緒判断や感情表現に関する演算処理を実行するＣＰＵ（Central Processing Unit）２１１や、ＲＡＭ（Random Access Memory）２１２、ＲＯＭ（Read Only Memory）２１３、及び外部記憶装置（ハード・ディスク・ドライブなど）２１４で構成され、モジュール内で自己完結した処理を行うことができる独立駆動型の情報処理装置である。
【００２４】
この思考制御モジュール２００は、画像入力装置２５１から入力される画像データや音声入力装置２５２から入力される音声データなど、外界からの刺激などに従って、ロボット装置１の現在の感情や意思を決定する。ここで、画像入力装置２５１は、例えばＣＣＤ（Charge Coupled Device）カメラを左右に１つずつ備えており、また、音声入力装置２５２は、例えばマイクロホンを複数備えている。また、思考制御モジュール２００は、スピーカを備える音声出力装置２５３を介して、音声を出力することができる。
【００２５】
また、思考制御モジュール２００は、意思決定に基づいた動作又は行動シーケンス、すなわち四肢の運動を実行するように、運動制御モジュール３００に対して指令を発行する。
【００２６】
一方の運動制御モジュール３００は、ロボット装置１の全身協調運動を制御するＣＰＵ３１１や、ＲＡＭ３１２、ＲＯＭ３１３、及び外部記憶装置（ハード・ディスク・ドライブなど）３１４で構成され、モジュール内で自己完結した処理を行うことができる独立駆動型の情報処理装置である。外部記憶装置３１４には、例えば、オフラインで算出された歩行パターンや目標とするＺＭＰ軌道、その他の行動計画を蓄積することができる。ここで、ＺＭＰとは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、ＺＭＰ軌道とは、例えばロボット装置１の歩行動作期間中にＺＭＰが動く軌跡を意味する。なお、ＺＭＰの概念並びにＺＭＰを歩行ロボットの安定度判別規範に適用する点については、Miomir Vukobratovic 著“LEGGED LOCOMOTION ROBOTS”（加藤一郎外著『歩行ロボットと人工の足』（日刊工業新聞社））に記載されている。
【００２７】
運動制御モジュール３００には、図２に示したロボット装置１の全身に分散するそれぞれの関節自由度を実現するアクチュエータ３５０、体幹部ユニット２の姿勢や傾斜を計測する姿勢センサ３５１、左右の足底の離床又は着床を検出する接地確認センサ３５２，３５３、バッテリなどの電源を管理する電源制御装置３５４などの各種の装置が、バス・インターフェース（Ｉ／Ｆ）３０１経由で接続されている。ここで、姿勢センサ３５１は、例えば加速度センサとジャイロ・センサの組み合わせによって構成され、接地確認センサ３５２，３５３は、近接センサ又はマイクロ・スイッチなどで構成される。
【００２８】
思考制御モジュール２００と運動制御モジュール３００とは、共通のプラットフォーム上で構築され、両者間はバス・インターフェース２０１，３０１を介して相互接続されている。
【００２９】
運動制御モジュール３００では、思考制御モジュール２００から指示された行動を体現すべく、各アクチュエータ３５０による全身協調運動を制御する。すなわち、ＣＰＵ３１１は、思考制御モジュール２００から指示された行動に応じた動作パターンを外部記憶装置３１４から取り出し、又は内部的に動作パターンを生成する。そして、ＣＰＵ３１１は、指定された動作パターンに従って、足部運動、ＺＭＰ軌道、体幹運動、上肢運動、腰部水平位置及び高さなどを設定すると共に、これらの設定内容に従った動作を指示する指令値を各アクチュエータ３５０に転送する。
【００３０】
また、ＣＰＵ３１１は、姿勢センサ３５１の出力信号によりロボット装置１の体幹部ユニット２の姿勢や傾きを検出すると共に、各接地確認センサ３５２，３５３の出力信号により各脚部ユニット５Ｒ／Ｌが遊脚又は立脚の何れの状態であるかを検出することによって、ロボット装置１の全身協調運動を適応的に制御することができる。
【００３１】
また、ＣＰＵ３１１は、ＺＭＰ位置が常にＺＭＰ安定領域の中心に向かうように、ロボット装置１の姿勢や動作を制御する。
【００３２】
さらに、運動制御モジュール３００は、思考制御モジュール２００において決定された意思通りの行動がどの程度発現されたか、すなわち処理の状況を、思考制御モジュール２００に返すようになっている。
【００３３】
このようにしてロボット装置１は、制御プログラムに基づいて自己及び周囲の状況を判断し、自律的に行動することができる。
【００３４】
（２）ロボット装置の動作制御方法
次に、上述したロボット装置１の動作制御方法について説明する。
【００３５】
前述したように、上述したロボット装置１のようなエンターテインメントロボットにおいては、ユーザを飽きさせない仕組みの追及が重要となる。本件発明者らは、ユーザを飽きさせない仕組みとして、
（ｉ）ユーザの動作とロボット装置の動作とが同調し合う（引き込み合う）こと
（ii）その同調関係を適当な方法に従って崩す（変調する）こと
を繰り返すことが有効であると考え、この枠組の下で、ロボット装置１の動作制御方法を実現する。以下、ユーザとロボット装置１との間のインタラクションの一例として、互いに面してダンスをする場面を想定する。
【００３６】
上記（ｉ）では、ユーザの動作とロボット装置１の動作との間で同調関係を構築することを目指すが、先ずはその同調関係をリズムレベルで構築することを考える。この場合、１つの方法として、ロボット装置１は、ユーザの動作のリズムを後述のように時系列波形情報（一次元時系列データ）として抽出し、その時系列波形情報を用いてリカレント型ニューラルネットワーク（ＲＮＮ）をリアルタイムで学習する。そして、ロボット装置１は、学習後のＲＮＮを用いて時系列波形情報を予測し、自らの身体をそのリズムで動かす。このとき、両者のリズムが同調していれば目指す同調関係を構築できたことになる。この方法では、ＲＮＮの学習能力を利用することにより、様々な同調（引き込み）関係に対応することができる。
【００３７】
次に上記（ii）では、上記（ｉ）で構築された同調関係を適当な方法で変調する。しかしながら、この変調方法が単純であるとユーザに簡単に見破られ、次第に飽きられてしまう可能性がある。このため、変調方法にはある程度の複雑性を入れられる必要があるが、上述したリズムレベルの同調関係のみでは、このような複雑な変調方法を実現することは困難である。
【００３８】
そこで、本実施の形態では、上述したリズムレベルの同調関係を含めた複数の同調関係を定義し、その複数の同調関係を変調するものとする。以下では一例として３つの同調関係層（モジュール）を定義する。第１のモジュールは、上述した同調関係よりも単純な同調関係を扱う。具体的には、ユーザの何らかの動きを検出したら一定又はランダムに身体を動かすという、予め作り込んだルールによる同調関係を構築する。第２のモジュールは、上述したＲＮＮによるリズムレベルでの同調関係を構築する。そして第３のモジュールは、時系列データとして身体部位の動き（例えば頭、手、足の中心点軌跡）を用い、ロボット装置１が自らの身体と対応が取れた状態でユーザの動作を真似るという、上述した同調関係よりも複雑な同調関係を構築する。
【００３９】
このような状況の下で上記（ii）で目指す変調方法を実現するには、大きく分けて、
（ａ）各モジュール内での変調
（ｂ）モジュール間での変調
という２つのレベルを考えることができる。
【００４０】
上記（ａ）は、各モジュール内で独立してその入出力関係に通常の場合と異なる変調性を設計する方法である。設計の方法は様々であるが、本実施の形態では単純に出力データ（ＲＮＮ出力値）に一定の割合でランダムノイズを与えることにする。
【００４１】
上記（ｂ）は、モジュール間で変調性を与える方法である。例えば、上述の例で最も強い同調状態は、３つのモジュール全てが同調関係を構築している状態である。ここで、任意のモジュールの同調関係を解除、すなわちそのモジュールの機能がアクチュエータに影響を与えないようにすると、一段階弱い同調状態となり、系全体としてユーザからは変調したようにみえることになる。このように、モジュール間で同調状態を制御することにより、上記（ａ）とは異なるレベルで系の変調性を柔軟に与えることが可能となる。
【００４２】
なお、実際には、後述のようにユーザの反応に基づいて上記（ii）における変調度合いを制御することが望ましい。
【００４３】
以上のような動作制御方法を実現するためのロボット装置１の機能ブロック構成を図４に示す。図４に示すように、ロボット装置１はモジュールＩ〜IIIを有しており、これらはそれぞれ上述した第１〜第３のモジュールに対応する。また、モジュールＩ〜IIIの内部に存在する変調器２１，３６，４４は、各モジュール内での変調を行うブロックであり、モジュール制御器５０は、モジュール間での変調を制御するブロックである。
【００４４】
カメラ画像入力器１０は、図３の画像入力装置２５１に相当し、単位時間毎のユーザの画像を動き検出器１１、リズム抽出器１２及び身体部位検出変換器１３に供給する。
【００４５】
動き検出器１１は、カメラ画像入力器１０から供給された単位時間毎の画像の差分をとり、この差分画像を元に動き領域を抽出する。そして、動き検出器１１は、動き領域が一定面積以上である場合にはユーザの動きを検出したとしてモジュールＩの基本反応ルールベース２０にオン信号を供給し、それ以外の場合はオフ信号を供給する。
【００４６】
リズム抽出器１２は、動き検出器１１と同様にして動き領域を抽出し、図５（Ａ）に示すように、その動き領域を囲むブロック領域（Block  Region；ＢＲ）と呼ばれる長方形を求める。そして、リズム抽出器１２は、各時点におけるＢＲ中心点の軌跡からユーザの動作のリズムを波形情報として抽出する。具体的には、図５（Ｂ）に示すように、各時点におけるＢＲ中心点を画像中心を任意角度で通る軸Ｌ上に射影し、その軸Ｌと時間軸とよって定義される波形情報に変換する。リズム抽出器１２は、一定時間毎の時系列波形情報をモジュールIIのデータバッファ３０に供給する。
【００４７】
身体部位検出変換器１３は、画像処理分野でよく用いられる基本的なテンプレートマッチングやカラーヒストグラム情報を用いて例えばユーザの頭と左右両手の位置を求め、この位置情報を逆キネマティクスを用いてロボット装置１自身の関節角制御情報に変換する（例えば上記非特許文献１を参照）。そして、身体部位検出変換器１３は、一定時間毎の関節角制御情報をまとめてモジュールIIIのデータバッファ４０に供給する。
【００４８】
ここでモジュールIは、上述したようにユーザの何らかの動きを検出したらランダムに身体を動かすという単純な同調関係を構築するモジュールであり、基本反応ルールベース２０と変調器２１とからなる。
【００４９】
基本反応ルールベース２０には、動き検出器１１からオン信号が供給された場合とオフ信号が供給された場合とにそれぞれ発現すべき動作が予めプログラマによって設計されている。この基本反応ルールベース２０は、オン信号が供給された場合には例えば両腕を一定角速度・一定範囲内で前後に振る動作を発現するため、両腕のＩＤとその関節角度ベクトルとを示す出力値ｗ＿ｏｕｔ１を身体制御器５１に供給する。一方、基本反応ルールベース２０は、オフ信号が供給された場合にはその供給を停止する。
【００５０】
変調器２１は、モジュール制御器５０からの制御信号に応じて、身体制御器５１に供給される出力値をランダムに変調する。例えば上述のように両腕を一定角速度・一定範囲内で前後に振る動作を行う場合、変調器２１は、この角速度や範囲値にランダムノイズを与える。なお、ランダムノイズとしては、人間にとって心地よいことが知られている１／ｆのゆらぎを持ったものを与えることもできる（文献「武者利光監修、『ゆらぎの科学１〜９』、森北出版」を参照）。
【００５１】
次にモジュールIIは、上述したようにＲＮＮによるリズムレベルでの同調関係を構築するモジュールであり、データバッファ３０と、ＲＮＮ制御器３１と、ＲＮＮ３２と、変換器３３と、直結反応ルールベース３４と、加算器３５と、変調器３６とからなる。
【００５２】
データバッファ３０には、リズム抽出器１２から供給された一定時間分の時系列波形情報が保持される。このデータバッファ３０はキュー構造となっており、一定時間よりも古いデータは破棄される。
【００５３】
ＲＮＮ制御器３１は、データバッファ３０に一定時間分の時系列波形情報が保持されるとＲＮＮ３２に予測モード信号を送り、ＲＮＮ３２は、この時間区間の時系列波形情報を用いてその区間内の予測精度誤差を算出する。そして変換器３３は、予測した時系列波形情報をロボット装置１自身の動作に変換する。この変換器３３は、例えば両腕を時系列波形情報に応じた角速度・範囲内で前後に振る動作を発現するため、両腕のＩＤとその関節角度ベクトルとを示す出力値ｗ＿ＲＮＮ２を加算器３５に供給する。
【００５４】
予測精度誤差の値が閾値以上である場合、ＲＮＮ制御器３１は、ＲＮＮ３２に学習モード信号を送ってこの時系列波形情報を学習させる（例えば上記非特許文献１を参照）。直結反応ルールベース３４は、ＲＮＮ３２が学習を行っている間、リズム抽出器１２から供給された時系列波形情報をロボット装置１自身の動作に変換する。この直結反応ルールベース３４は、例えば両腕を時系列波形情報に応じた角速度・範囲内で前後に振る動作を発現するため、両腕のＩＤとその関節角度ベクトルとを示す出力値ｗ＿Ｒｕｌｅ２を加算器３５に供給する。なお、上述した出力値ｗ＿ＲＮＮ２で動かす身体部位と出力値ｗ＿Ｒｕｌｅ２で動かす身体部位とは異なっていても構わない。そして加算器３５は、出力値ｗ＿ＲＮＮ２と出力値ｗ＿Ｒｕｌｅ２との線形和を下記式（１）
Ｗ＿ｏｕｔ２＝α１・ｗ＿ＲＮＮ２＋β１・ｗ＿Ｒｕｌｅ２  ・・・(1)
に従って求め、得られた出力値Ｗ＿ｏｕｔ２を身体制御器５１に供給する。なお、動作を自然に遷移させるため、加算器３５は、ＲＮＮ３２の学習が進み予測精度誤差が小さくなるに従って、或いは時間経過に従って出力値ｗ＿Ｒｕｌｅ２の成分が減少し、出力値ｗ＿ＲＮＮ２の成分が増加するように、パラメータα１，β１を変化させるようにしても構わない。
【００５５】
一方、予測精度誤差の値が閾値以下である場合、加算器３５は、出力値ｗ＿Ｒｕｌｅ２を用いずに出力値ｗ＿ＲＮＮ２を上述した出力値Ｗ＿ｏｕｔ２として身体制御器５１に供給する。これにより、ロボット装置１は自身の内部構造を元にアクティブに動作を出力していることになり、模倣操作が安定化される。なお、加算器３５は、予測精度誤差の値が閾値以下である場合であっても上述した式（１）に従って出力値Ｗ＿ｏｕｔ２を求めるようにしても構わない。この場合にも、加算器３５は、時間経過に従って出力値ｗ＿Ｒｕｌｅ２の成分が減少し、出力値ｗ＿ＲＮＮ２の成分が増加するように、パラメータα１，β１を変化させることができる。
【００５６】
変調器３６は、モジュール制御器５０からの制御信号に応じて、身体制御器５１に供給される出力値をランダムに変調する。この変調器３６は、例えば上述した加算器３５におけるパラメータα１，β１にランダムノイズを与え、或いは出力値ｗ＿ＲＮＮ２，ｗ＿Ｒｕｌｅ２にランダムノイズを与える。
【００５７】
続いてモジュールIIIは、上述したように身体部位の対応を取ってユーザの動作を真似るという複雑な同調関係を構築するモジュールであり、データバッファ４０と、ＲＮＮ制御器４１と、ＲＮＮ４２と、加算器４３と、変調器４４とからなる。
【００５８】
データバッファ４０には、身体部位検出変換器１３から供給された一定時間分の関節角制御情報が保持される。このデータバッファ４０はキュー構造となっており、一定時間よりも古いデータは破棄される。
【００５９】
ＲＮＮ制御器４１は、データバッファ４０に一定時間分の関節角制御情報が保持されるとＲＮＮ４２に予測モード信号を送り、ＲＮＮ４２は、この時間区間の関節角制御情報を用いてその区間の予測精度誤差を算出する。
【００６０】
予測精度誤差の値が閾値以上である場合、ＲＮＮ制御器４１は、ＲＮＮ４２に学習モード信号を送ってこの関節角制御情報を学習させる（例えば上記非特許文献１を参照）。そして加算器４３は、出力値ｗ＿ＲＮＮ３と身体部位検出変換器１３から供給された出力値ｗ＿Ｒｕｌｅ３との線形和を下記式（２）
Ｗ＿ｏｕｔ３＝α２・ｗ＿ＲＮＮ３＋β２・ｗ＿Ｒｕｌｅ３  ・・・(2)
に従って求め、得られた出力値Ｗ＿ｏｕｔ３を身体制御器５１に供給する。なお、動作を自然に遷移させるため、加算器４３は、ＲＮＮ４２の学習が進み予測精度誤差が小さくなるに従って、或いは時間経過に従って出力値ｗ＿Ｒｕｌｅ３の成分が減少し、出力値ｗ＿ＲＮＮ３の成分が増加するように、パラメータα２，β２を変化させるようにしても構わない。
【００６１】
一方、予測精度誤差の値が閾値以下である場合、加算器４３は、出力値ｗ＿Ｒｕｌｅ３を用いずに出力値ｗ＿ＲＮＮ３を上述した出力値Ｗ＿ｏｕｔ３として身体制御器５１に供給する。これにより、ロボット装置１は自身の内部構造を元にアクティブに動作を出力していることになり、模倣操作が安定化される。なお、加算器４３は、予測精度誤差の値が閾値以下である場合であっても上述した式（２）に従って出力値Ｗ＿ｏｕｔ３を求めるようにしても構わない。この場合にも、加算器４３は、時間経過に従って出力値ｗ＿Ｒｕｌｅ３の成分が減少し、出力値ｗ＿ＲＮＮ３の成分が増加するように、パラメータα２，β２を変化させることができる。
【００６２】
変調器４４は、モジュール制御器５０からの制御信号に応じて、身体制御器５１に供給される出力値をランダムに変調する。この変調器４４は、例えば上述した加算器４３におけるパラメータα２，β２をランダムノイズで変化させ、或いは出力値ｗ＿ＲＮＮ３，ｗ＿Ｒｕｌｅ３をランダムノイズで変化させる。
【００６３】
身体制御器５１は、以上のようにして各モジュールＩ〜IIIから供給された出力値Ｗ＿ｏｕｔ１，Ｗ＿ｏｕｔ２，Ｗ＿ｏｕｔ３を統合し、アクチュエータ５２を駆動する命令に変換する。なお、出力値Ｗ＿ｏｕｔ１，Ｗ＿ｏｕｔ２，Ｗ＿ｏｕｔ３を統合する際には、単純に３つの出力値を重ね合わせるようにしてもよく、上述と同様に３つの出力値の線形和を計算するようにしてもよい。
【００６４】
以上のように、本実施の形態におけるロボット装置１は、それぞれ異なる同調関係を構築するモジュールＩ〜IIIを有し、それぞれの出力を統合してアクチュエータ５２を駆動するようにしているため、ユーザの動作と同調した動作を行う際に、複雑な同調関係を扱うことが可能とされる。
【００６５】
また、モジュールII，IIIでは、ＲＮＮ３２，４２での学習を経た出力値ｗ＿ＲＮＮ２，ｗ＿ＲＮＮ３とＲＮＮ３２，４２での学習を経ていない出力値ｗ＿Ｒｕｌｅ２，ｗ＿Ｒｕｌｅ３との線形和を取るようにしているため、発現する動作を柔軟に遷移させることが可能となる。すなわち、例えばＲＮＮ３２，４２の学習初期には出力値ｗ＿Ｒｕｌｅ２，ｗ＿Ｒｕｌｅ３の成分の割合を増加させ出力値ｗ＿ＲＮＮ２，ｗ＿ＲＮＮ３の成分の割合を減少させることで、動作を途切れさせることなく比較的安定した動作表出が可能となり、学習が進むに従って出力値ｗ＿ＲＮＮ２，ｗ＿ＲＮＮ３の成分の割合を増加させ出力値ｗ＿Ｒｕｌｅ２，ｗ＿Ｒｕｌｅ３の成分の割合を減少させることで、次第に動作を安定させることが可能となる。但し、変調に際しては、このような増減法にとらわれず、自由にパラメータを変更することも可能である。
【００６６】
なお、上述した実施の形態では、同調関係を構築するモジュール数が３つであるものとして説明したが、これに限定されるものではなく、任意の数に設定することが可能である。また、入出力データの同調（引き込み）関係を記述するものとして、ルールベースとＲＮＮとの２つを用いているが、公知の様々な技術、例えば振動子モデルや通常のニューラルネットワークなどを用いることも可能である。
【００６７】
ここで、本実施の形態におけるロボット装置１では、上述したように３つのモジュールＩ〜IIIを用いることで複雑な同調関係を構築することができ、また、モジュール毎に同調関係を変調することができるが、このようなモジュール内で完結した単純な変調方法では、ユーザに簡単に見破られ、次第に飽きられてしまう可能性がある。
【００６８】
そこで、本実施の形態では、モジュール毎に同調関係を変調するのみならず、モジュール制御器５０により、モジュール間でも同調関係を変調する。特に、本実施の形態におけるモジュール制御器５０は、ユーザの反応、例えば「苛立ち（IRRITATED）」、「中立（NEUTRAL）」、「退屈（BORED）」、「快適（COMFORTABLE）」といったユーザの情動状態に基づいて、モジュール間での変調度合いを制御する。
【００６９】
なお、ユーザの情動状態を検出する方法としては、顔の表情を用いたり音声のピッチ、パワーの情報を用いたりする方法が提案されているが（文献「J. R. Movellan and M. S. Bartlett, “The Next Generation of Automatic Facial Expression Measurement”, In: P. Ekman (eds.)“What the Face Reveals”, Oxford University Press, 2003」を参照）、以下では簡単のため、ユーザに気持ちを表現する単語を適宜話してもらい、それをマイク音声入力器５３で入力し、音声認識器５４で認識して上述した４つの情動状態に分類することにする。実際には、「苛立ち（IRRITATED）」、「退屈（BORED）」、「快適（COMFORTABLE）」に合致する単語を辞書として用意しておき、これに合致しないものを「中立（NEUTRAL）」と判断する。
【００７０】
例えば、ユーザの情動状態が「苛立ち（IRRITATED）」であった場合、モジュール制御器５０は、ユーザとの同調関係がまだ不十分であると判断し、同調出力に用いられるモジュールの数を増やすことで同調関係を強化する。例えば、ユーザの情動状態が「中立（NEUTRAL）」であるときのモジュール数を２としたとき、「苛立ち（IRRITATED）」と検出された場合にはモジュール数を３にした同調関係を構築するようにする。また、モジュール制御器５０は、各モジュールの学習速度を向上させるため、ＲＮＮの学習アルゴリズムに定義されている学習パラメータを一定値増加させるように各モジュールに制御信号を送ることも可能である。なお、学習パラメータがないモジュールIについてはそのままにしておく。
【００７１】
また、ユーザの情動状態が「中立（NEUTRAL）」であった場合、モジュール制御器５０は、現在の同調関係がユーザにとってまずまずの状態であると判断し、これを大きく変調するのではなく、ゆらぎ変調を与えるように一定時間毎に変調器２１，３６，４４に制御信号を送る。ゆらぎ変調は、ユーザがはっきりと分からない程度の変調であるが、ゆらぎ性は人間をリラックスさせることが知られているため、定常状態の１つとして導入する。
【００７２】
また、ユーザの情動状態が「退屈（BORED）」であった場合、モジュール制御器５０は、ユーザが現在の同調関係に飽きていると判断し、ユーザの退屈度合いに応じて同調関係を変調する。具体的には、「退屈（BORED）」が一定回数以上連続して検出された場合には大域変調を行い、それ以外の場合には小域変調を行う。大域変調の場合、モジュール制御器５０は、各モジュールの変調器２１，３６，４４にランダム変調の指令を送るのに加えて、モジュール構成も変化させる。この変化の方法としては、全くランダムに変える方法、現在作動中のモジュール群からランダムに１つを選んでそれを同調関係から外したり、現在作動していないモジュール群からランダムに１つを選んでそれを同調関係に加えたりする方法、或いはモジュール関係に階層性が定義できる場合に、階層が高い１つのモジュールを現在の同調関係から外したり現在の同調関係に加えたりする方法が考えられる。例えば、モジュールI，II，IIIの順で動作が規制されるという階層性が定義でき、現在作動中のモジュールがIとIIの２つであった場合には、モジュールIIを外したりモジュールIIIを加えたりすることができる。なお、身体制御器５１において各モジュールＩ〜IIIから供給された出力値の線形和を計算する場合、上述したようにモジュール数を増減させるのではなく、線形和に用いるパラメータを変更することで各出力値の割合を変化させることが可能である。一方、小域変調の場合、モジュール制御器５０は、モジュール構成を変化させず、各モジュールの変調器２１，３６，４４にランダム変調の指令を送る。
【００７３】
また、ユーザの情動状態が「快適（COMFORTABLE）」であった場合、モジュール制御器５０は、現在の同調関係がユーザにとって好ましいものと判断し、同調関係を変調せず、そのまま動作を続けさせる。
【００７４】
以上のように、本実施の形態におけるロボット装置１は、ユーザの反応、例えば「苛立ち（IRRITATED）」、「中立（NEUTRAL）」、「退屈（BORED）」、「快適（COMFORTABLE）」といったユーザの情動状態に基づいて、モジュール内のみならずモジュール間でも同調関係を変調するため、ユーザをより飽きさせない動作を実現することができる。
【００７５】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【００７６】
例えば、上述した実施の形態では、カメラ画像入力器１０を介して入力された画像に応じて、モジュールＩ〜IIIにおいてユーザの動作と同調したそれぞれ異なる動作を生成するものとして説明したが、画像に限らず、音声に応じてユーザの動作と同調したそれぞれ異なる動作を生成するようにしてもよく、それらを組み合わせるようにしてもよい。例えば、音声に応じてユーザの動作と同調した動作を生成する場合には、ユーザの拍手の音や足踏み等の音からユーザの動作のリズム等を抽出し、そのリズムに応じた動作を生成することができる。
【００７７】
また、上述した実施の形態では、ロボット装置１とユーザ（人間）との間でインタラクションを図るものとして説明したが、ロボット装置１のインタラクション対象がユーザに限定されるものではなく、同様の機能を有するロボット装置等の他の動作主体をインタラクション対象としても構わない。
【図面の簡単な説明】
【００７８】
【図１】本実施の形態におけるロボット装置の外観を示す斜視図である。
【図２】同ロボット装置の機能構成を模式的に示すブロック図である。
【図３】同ロボット装置の制御ユニットの構成を詳細に示すブロック図である。
【図４】本実施の形態における動作制御方法を実現するためのロボット装置の機能ブロック構成を示す図である。
【図５】同図（Ａ）は、ロボット装置が画像から抽出する動き領域及びその動き領域を囲むブロック領域を示す図であり、同図（Ｂ）は、リズム情報を計算するためにブロック領域中心点を画像中心を任意角度で通る軸上に射影する様子を示す図である。
【符号の説明】
【００７９】
１  ロボット装置、１０  カメラ画像入力器、１１  動き検出器、１２  リズム抽出器、１３  身体部位検出変換器、２０  基本反応ルールベース、２１  変調器、３０  データバッファ、３１  ＲＮＮ制御器、３２  ＲＮＮ、３３  変換器、３４  直結反応ルールベース、３５  加算器、３６  変調器、４０  データバッファ、４１  ＲＮＮ制御器、４２  ＲＮＮ、４３  加算器、４４  変調器、５０  モジュール制御器、５１  身体制御器、５２  アクチュエータ、５３  マイク音声入力器、５４  音声認識器
【図１】
2005342873.tif 000003
【図２】
2005342873.tif 000004
【図３】
2005342873.tif 000005
【図４】
2005342873.tif 000006
【図５】
2005342873.tif 000007