(57)【要約】    【構成】  コミュニケーションロボットシステム１０はコンピュータ２０を含み、コンピュータ２０は、モーションキャプチャシステム２２から入力される人間１４の３次元動作データを検出する。また、コンピュータ２０はロボット１２から入力される動作状態情報を検出する。同時刻における３次元動作データと動作状態情報とは、対応づけてＤＢ２４に記憶される。コンピュータ２０は、現在の人間１４の行動に対応する３次元動作データと類似する３次元動作データをＤＢ２４から検出し、検出した３次元動作データに対応して記憶される動作状態情報に含まれる行動をロボット１２に実行させる。    【効果】  人間の行動からロボットの行動を引き出すことができ、飽きの来ないコミュニケーションを実現できる。【選択図】  図１
2006205343.tif 000002
【特許請求の範囲】
【請求項１】
コミュニケーションロボットとこのコミュニケーションロボットを制御する制御装置とを備えるコミュニケーションロボットシステムであって、
コミュニケーションロボットは、
行動情報に従ってコミュニケーション行動を実行するコミュニケーション行動実行手段、
前記行動情報と前記コミュニケーション行動を実行したときの状態情報とを含むロボット情報を前記制御装置に送信する送信手段、および
前記制御装置からの割り込み指示を受信する割り込み指示受信手段を備え、
前記制御装置は、
人間の動作情報を検出する動作情報検出手段、
前記コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、
同時刻における、前記動作情報と前記ロボット情報とを対応づけて記憶する記憶手段、および
前記動作情報検出手段によって検出された現在の動作情報に基づいて、前記記憶手段から前記ロボット情報に含まれる前記行動情報を読み出し、前記コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、コミュニケーションロボットシステム。
【請求項２】
前記状態情報は、前記コミュニケーションロボットが自発的にコミュニケーション行動を行う通常状態または前記コミュニケーションロボットが前記人間の動作に起因して割り込みでコミュニケーション行動を行う割り込み状態を示す、請求項１記載のコミュニケーションロボットシステム。
【請求項３】
前記割り込み指示送信手段は、前記コミュニケーションロボットが割り込みでコミュニケーション行動を行っているときには、新たな割り込み指示を送信しない、請求項１または２記載のコミュニケーションロボットシステム。
【請求項４】
前記割り込み指示送信手段は、前記コミュニケーションロボットが自発的にコミュニケーション行動を行っているとき、前記人間の動作に起因するコミュニケーション行動の実行の割り込み指示を送信する、請求項１ないし３のいずれかに記載のコミュニケーションロボットシステム。
【請求項５】
前記動作情報検出手段によって検出された現在の動作情報と前記記憶手段に記憶された過去の動作情報とを比較する比較手段をさらに備え、
前記割り込み指示送信手段は、前記比較手段の比較結果が少なくとも類似を示すとき、前記現在の動作情報と類似する前記過去の動作情報に対応して記憶されたロボット情報に含まれる行動情報に従う行動の実行の割り込み指示を送信する、請求項１ないし４のいずれかに記載のコミュニケーションロボットシステム。
【請求項６】
コミュニケーションロボットを制御するロボット制御装置であって、
人間の動作情報を検出する動作情報検出手段、
前記コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、
同時刻における、前記動作情報と前記ロボット情報とを対応づけて記憶する記憶手段、および
前記動作情報検出手段によって検出された現在の動作情報に基づいて、前記記憶手段から前記ロボット情報に含まれる行動情報を読み出し、前記コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、ロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はコミュニケーションロボットシステムおよびロボット制御装置に関し、特にたとえば、人間との間でコミュニケーション行動を行うコミュニケーションロットを制御する、コミュニケーションロボットシステムおよびロボット制御装置に関する。
【背景技術】
【０００２】
本件出願人は、特許文献１に代表されるように、人間と相互作用するコミュニケーションロボットを提案してきた。
【特許文献１】特開２００２−３５５７８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
背景技術のコミュニケーションロボットを用いて、コミュニケーション中の人間の身体動作と当該コミュニケーションロボットの身体動作とを互いに関連づけて記録しておき、人間の身体動作で、任意のコミュニケーションロボットの行動を呼び出し、実行させることが考えられる。
【０００４】
しかし、人間の身体動作とコミュニケーションロボットの行動とを単純に対応付けることはできない。なぜなら、人間の身体動作（行動）には２通りの可能性があるからである。１つは、コミュニケーションロボットの行動に対する行動（たとえば、コミュニケーションロボットが握手を求めてきたら、人間も握手し返す。）であり、もう１つは、コミュニケーションロボットの行動を検索する行動（人間がコミュニケーションロボットと握手するために、コミュニケーションロボットに手を差し出す。）である。したがって、人間の行動とコミュニケーションロボットの行動との対応関係を単純に記録すると、上記２つの行動が混ざってしまうのである。
【０００５】
それゆえに、この発明の主たる目的は、新規な、コミュニケーションロボットシステムを提供することである。
【０００６】
この発明の他の目的は、人間の身体動作に応じたコミュニケーション行動を実行できる、コミュニケーションロボットシステムを提供することである。
【課題を解決するための手段】
【０００７】
請求項１の発明は、コミュニケーションロボットとこのコミュニケーションロボットを制御する制御装置とを備えるコミュニケーションロボットシステムであって、コミュニケーションロボットは、行動情報に従ってコミュニケーション行動を実行するコミュニケーション行動実行手段、行動情報とコミュニケーション行動を実行したときの状態情報とを含むロボット情報を制御装置に送信する送信手段、および制御装置からの割り込み指示を受信する割り込み指示受信手段を備え、制御装置は、人間の動作情報を検出する動作情報検出手段、コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、同時刻における、動作情報とロボット情報とを対応づけて記憶する記憶手段、および動作情報検出手段によって検出された現在の動作情報に基づいて、記憶手段からロボット情報に含まれる行動情報を読み出し、コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、コミュニケーションロボットシステムである。
【０００８】
請求項１の発明では、コミュニケーションロボットシステムは、コミュニケーションロボットと、このコミュニケーションロボットを制御する制御装置とを備える。コミュニケーションロボットは、コミュニケーション行動実行手段、送信手段および割り込み指示受信手段を備える。コミュニケーション行動実行手段は、行動情報（行動モジュール）に従ってコミュニケーション行動を実行する。送信手段は、行動情報とコミュニケーション行動を実行したときのコミュニケーションロボットの状態情報とを含むロボット情報を制御装置に送信する。また、割り込み指示受信手段は、制御装置からの割り込み指示を受信する。一方、制御装置は、動作情報検出手段、ロボット情報検出手段、記憶手段、および割り込み指示送信手段を備える。動作情報検出手段は、コミュニケーションロボットとコミュニケーションを行う人間の動作情報（身体動作）を検出する。ロボット情報検出手段は、コミュニケーションロボットから送信されるロボット情報を検出する。記憶手段は、同時刻における、動作情報とロボット情報とを対応づけて記憶する。つまり、人間の身体動作とロボットのコミュニケーション行動との対応関係が記憶される。割り込み指示送信手段は、動作情報検出手段によって検出された現在の動作情報に基づいて、記憶手段からロボット情報に含まれる行動情報を読み出し、コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する。
【０００９】
請求項１の発明によれば、人間の身体動作とコミュニケーションロボットのコミュニケーション動作との対応関係を記憶しておき、人間の現在の身体動作に基づいてコミュニケーションロボットにコミュニケーション動作を割り込みで実行させるので、人間の身体動作でコミュニケーションロボットの行動を引き出すことができる。すなわち、人間の身体動作に応じたコミュニケーション行動を、コミュニケーションロボットに実行させることができる。
【００１０】
請求項２の発明は請求項１に従属し、状態情報は、コミュニケーションロボットが自発的にコミュニケーション行動を行う通常状態またはコミュニケーションロボットが人間の動作に起因して割り込みでコミュニケーション行動を行う割り込み状態を示す。
【００１１】
請求項２の発明では、状態情報は、通常状態または割り込み状態を示す。通常状態では、コミュニケーションロボットは、自発的にコミュニケーション行動を行う。たとえば、ランダムまたは所定のルールに従う順番で行動情報（行動モジュール）が選択され、選択された行動モジュールに従うコミュニケーション行動が実行される。一方、割り込み状態では、コミュニケーションロボットが人間の動作に起因して割り込みでコミュニケーション行動を行う。つまり、割り込み指示送信手段の割り込み指示に応じて、コミュニケーションロボットはコミュニケーション行動を行う。
【００１２】
請求項２の発明によれば、コミュニケーションロボットがコミュニケーション行動を実行したときの状態情報を知ることができる。したがって、たとえば、人間の身体動作に拘わらずコミュニケーションロボットが人間に手を差し出す（握手する）行動（通常状態）と、人間が差し出した手を握るように、コミュニケーションロボットが人間に手を差し出す（握手する）行動（割り込み状態）とを区別することができる。
【００１３】
請求項３の発明は請求項１または２に従属し、割り込み指示送信手段は、コミュニケーションロボットが割り込みでコミュニケーション行動を行っているときには、新たな割り込み指示を送信しない。
【００１４】
請求項３の発明では、割り込み指示送信手段は、コミュニケーションロボットが割り込みでコミュニケーション行動を行っているときには、新たな割り込み指示を送信しない。つまり、連続して割り込み指示を送信しない。
【００１５】
請求項３の発明によれば、連続して割り込み指示を送信しないため、コミュニケーションロボットが同じコミュニケーション行動を繰り返し実行するような不都合を回避することができる。
【００１６】
請求項４の発明は請求項１ないし３のいずれかに従属し、割り込み指示送信手段は、コミュニケーションロボットが自発的にコミュニケーション行動を行っているとき、人間の動作に起因するコミュニケーション行動の実行の割り込み指示を送信する。
【００１７】
請求項４の発明では、割り込み指示送信手段は、コミュニケーションロボットが自発的にコミュニケーション行動を行っているとき、人間の動作に起因するコミュニケーション行動の実行の割り込み指示を送信する。
【００１８】
請求項４の発明によれば、人間がコミュニケーションロボットに拘わることで、コミュニケーションロボットのコミュニケーション行動を引き出すことができる。
【００１９】
請求項５の発明は請求項１ないし４のいずれかに従属し、動作情報検出手段によって検出された現在の動作情報と記憶手段に記憶された過去の動作情報とを比較する比較手段をさらに備え、割り込み指示送信手段は、比較手段の比較結果が少なくとも類似を示すとき、現在の動作情報と類似する過去の動作情報に対応して記憶されたロボット情報に含まれる行動情報に従う行動の実行の割り込み指示を送信する。
【００２０】
請求項５の発明では、比較手段は、現在の動作情報と過去の動作情報とを比較する。割り込み指示送信手段は、現在の動作情報に類似する過去の動作情報に対応して記憶された行動情報に従う行動の実行の割り込み指示をコミュニケーションロボットに送信する。
【００２１】
請求項５の発明によれば、人間の身体動作によって、過去に行ったコミュニケーション行動を引き出すことができる。
【００２２】
請求項６の発明はコミュニケーションロボットを制御するロボット制御装置であって、人間の動作情報を検出する動作情報検出手段、コミュニケーションロボットから送信されるロボット情報を検出するロボット情報検出手段、同時刻における、動作情報とロボット情報とを対応づけて記憶する記憶手段、および動作情報検出手段によって検出された現在の動作情報に基づいて、記憶手段からロボット情報に含まれる行動情報を読み出し、コミュニケーションロボットに当該行動情報に従うコミュニケーション行動の実行の割り込み指示を送信する割り込み指示送信手段を備える、ロボット制御装置である。
【００２３】
このロボット制御装置の発明によれば、コミュニケーションロボットシステムの発明と同様に、人間の身体動作に応じたコミュニケーション行動をコミュニケーションロボットに実行させることができる。
【発明の効果】
【００２４】
この発明によれば、人間の身体動作とコミュンケーションロボットのコミュニケーション行動との対応関係を記憶しておき、現在の身体動作に基づいてコミュニケーション行動を実行させるので、人間の身体動作に応じたコミュニケーション行動をコミュニケーションロボットに実行させることができる。
【００２５】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００２６】
図１を参照して、この実施例のコミュニケーションロボットシステム（以下、単に「システム」という。）１０は、コミュニケーションロボット（以下、単に「ロボット」という。）１２を含む。このロボット１２は、人間１４との間で、身振り手振りのような身体動作ないし行動（以下、「コミュニケーション行動」ということがある。）を取ることができる。ただし、コミュニケーション行動としては、ロボット１２と人間１４との間における会話が含まれる場合もある。
【００２７】
ロボット１２は、人間のような身体を有し、その身体を用いてコミュニケーションのために必要な複雑な身体動作を生成する。具体的には、図２を参照して、ロボット１２は台車３２を含み、この台車３２の下面には、このロボット１２を自律移動させる車輪３４が設けられる。この車輪３４は、車輪モータ（ロボット１２の内部構成を示す図３において参照番号「３６」で示す。）によって駆動され、台車３２すなわちロボット１２を前後左右任意の方向に動かすことができる。
【００２８】
なお、図２では示さないが、この台車３２の前面には、衝突センサ（図３において参照番号「３８」で示す。）が取り付けられ、この衝突センサ３８は、台車３２への人や他の障害物の接触を検知する。そして、ロボット１２の移動中に障害物との接触を検知すると、直ちに車輪３４の駆動を停止してロボット１２の移動を急停止させる。
【００２９】
また、ロボット１２の背の高さは、この実施例では、人、特に子供に威圧感を与えることがないように、１００ｃｍ程度とされている。ただし、この背の高さは任意に変更可能である。
【００３０】
台車３２の上には、多角形柱のセンサ取付パネル４０が設けられ、このセンサ取付パネル４０の各面には、超音波距離センサ４２が取り付けられる。この超音波距離センサ４２は、取付パネル４０すなわちロボット１２の周囲の主として人との間の距離を計測するものである。
【００３１】
台車３２の上には、さらに、ロボット１２の胴体が、その下部が上述の取付パネル４０に囲まれて、直立するように取り付けられる。この胴体は下部胴体４４と上部胴体４６とから構成され、これら下部胴体４４および上部胴体４６は、連結部４８によって連結される。連結部４８には、図示しないが、昇降機構が内蔵されていて、この昇降機構を用いることによって、上部胴体４６の高さすなわちロボット１２の高さを変化させることができる。昇降機構は、後述のように、腰モータ（図３において参照番号「５０」で示す。）によって駆動される。上で述べたロボット１２の身長１００ｃｍは、上部胴体４６をそれの最下位置にしたときの値である。したがって、ロボット１２の身長は１００ｃｍ以上にすることができる。
【００３２】
上部胴体４６のほぼ中央には、１つの全方位カメラ５２と、１つのマイク１６とが設けられる。全方位カメラ５２は、ロボット１２の周囲を撮影するもので、後述の眼カメラ５４と区別される。マイク１６は、周囲の音、とりわけ人の声を取り込む。
【００３３】
上部胴体４６の両肩には、それぞれ、肩関節５６Ｒおよび５６Ｌによって、上腕５８Ｒおよび５８Ｌが取り付けられる。肩関節５６Ｒおよび５６Ｌは、それぞれ３軸の自由度を有する。すなわち、右肩関節５６Ｒは、Ｘ軸，Ｙ軸およびＺ軸の各軸廻りにおいて上腕５８Ｒの角度を制御できる。Ｙ軸は、上腕５８Ｒの長手方向（または軸）に平行な軸であり、Ｘ軸およびＺ軸は、そのＹ軸に、それぞれ異なる方向から直交する軸である。左肩関節５６Ｌは、Ａ軸，Ｂ軸およびＣ軸の各軸廻りにおいて上腕５８Ｌの角度を制御できる。Ｂ軸は、上腕５８Ｌの長手方向（または軸）に平行な軸であり、Ａ軸およびＣ軸は、そのＢ軸に、それぞれ異なる方向から直交する軸である。
【００３４】
上腕５８Ｒおよび５８Ｌのそれぞれの先端には、肘関節６０Ｒおよび６０Ｌを介して、前腕６２Ｒおよび６２Ｌが取り付けられる。肘関節６０Ｒおよび６０Ｌは、それぞれ、Ｗ軸およびＤ軸の軸廻りにおいて、前腕６２Ｒおよび６２Ｌの角度を制御できる。
【００３５】
なお、上腕５８Ｒおよび５８Ｌならびに前腕６２Ｒおよび６２Ｌ（いずれも図３）の変位を制御するＸ，Ｙ，Ｚ，Ｗ軸およびＡ，Ｂ，Ｃ，Ｄ軸では、「０度」がホームポジションであり、このホームポジションでは、上腕５８Ｒおよび５８Ｌならびに前腕６２Ｒおよび６２Ｌは下方向に向けられる。
【００３６】
また、図３では示さないが、上部胴体４６の肩関節５６Ｒおよび５６Ｌを含む肩の部分や上述の上腕５８Ｒおよび５８Ｌならびに前腕６２Ｒおよび６２Ｌを含む腕の部分には、それぞれ、タッチセンサ（図３において参照番号６４で包括的に示す。）が設けられていて、これらのタッチセンサ６４は、人がロボット１２のこれらの部位に接触したかどうかを検知する。
【００３７】
前腕６２Ｒおよび６２Ｌのそれぞれの先端には、手に相当する球体６６Ｒおよび６６Ｌがそれぞれ固定的に取り付けられる。なお、この球体６６Ｒおよび６６Ｌに代えて、この実施例のロボット１２と異なり指の機能が必要な場合には、人の手の形をした「手」を用いることも可能である。
【００３８】
上部胴体４６の中央上方には、首関節６８を介して、頭部７０が取り付けられる。この首関節６８は、３軸の自由度を有し、Ｓ軸，Ｔ軸およびＵ軸の各軸廻りに角度制御可能である。Ｓ軸は首から真上に向かう軸であり、Ｔ軸およびＵ軸は、それぞれ、このＳ軸に対して異なる方向で直交する軸である。頭部７０には、人の口に相当する位置に、スピーカ７２が設けられる。スピーカ７２は、ロボット１２が、それの周囲の人に対して音声または声によってコミュニケーションを図るために用いられる。ただし、スピーカ７２は、ロボット１２の他の部位たとえば胴体に設けられてもよい。
【００３９】
また、頭部７０には、目に相当する位置に眼球部７４Ｒおよび７４Ｌが設けられる。眼球部７４Ｒおよび７４Ｌは、それぞれ眼カメラ５４Ｒおよび５４Ｌを含む。なお、右の眼球部７４Ｒおよび左の眼球部７４Ｌをまとめて眼球部７４といい、右の眼カメラ５４Ｒおよび左の眼カメラ５４Ｌをまとめて眼カメラ５４ということもある。眼カメラ５４は、ロボット１２に接近した人の顔や他の部分ないし物体等を撮影してその映像信号を取り込む。
【００４０】
なお、上述の全方位カメラ５２および眼カメラ５４のいずれも、たとえばＣＣＤやＣＭＯＳのような固体撮像素子を用いるカメラであってよい。
【００４１】
たとえば、眼カメラ５４は眼球部７４内に固定され、眼球部７４は眼球支持部（図示せず）を介して頭部７０内の所定位置に取り付けられる。眼球支持部は、２軸の自由度を有し、α軸およびβ軸の各軸廻りに角度制御可能である。α軸およびβ軸は頭部７０に対して設定される軸であり、α軸は頭部７０の上へ向かう方向の軸であり、β軸はα軸に直交しかつ頭部７０の正面側（顔）が向く方向に直交する方向の軸である。この実施例では、頭部７０がホームポジションにあるとき、α軸はＳ軸に平行し、β軸はＵ軸に平行するように設定されている。このような頭部７０において、眼球支持部がα軸およびβ軸の各軸廻りに回転されることによって、眼球部７４ないし眼カメラ５４の先端（正面）側が変位され、カメラ軸すなわち視線方向が移動される。
【００４２】
なお、眼カメラ５４の変位を制御するα軸およびβ軸では、「０度」がホームポジションであり、このホームポジションでは、図３に示すように、眼カメラ５４のカメラ軸は頭部７０の正面側（顔）が向く方向に向けられ、視線は正視状態となる。
【００４３】
図３には、ロボット１２の内部構成を示すブロック図が示される。この図３に示すように、ロボット１２は、全体の制御のためにマイクロコンピュータまたはＣＰＵ７６を含み、このＣＰＵ７６には、バス７８を通して、メモリ８０，モータ制御ボード８２，センサ入力／出力ボード８４および音声入力／出力ボード８６が接続される。
【００４４】
メモリ８０は、図示しないが、ＲＯＭやＨＤＤ、ＲＡＭ等を含み、ＲＯＭまたはＨＤＤにはこのロボット１２の制御プログラムおよびデータ等が予め格納されている。ＣＰＵ７６は、このプログラムに従って処理を実行する。具体的には、ロボット１２の身体動作を制御するための複数のプログラム（行動モジュールと呼ばれる。）が記憶される。たとえば、行動モジュールが示す身体動作としては、「握手」、「抱っこ」、「万歳」…などがある。行動モジュールが示す身体動作が「握手」である場合には、当該行動モジュールを実行すると、ロボット１２は、たとえば、右手を前に差し出す。また、行動モジュールが示す身体動作が「抱っこ」である場合には、当該行動モジュールを実行すると、ロボット１２は、たとえば、両手を前に差し出す。さらに、行動モジュールが示す身体動作が「万歳」である場合には、当該行動モジュールを実行すると、ロボット１２は、たとえば、両手を数回（たとえば、２回）上下させる。また、ＲＡＭは、一時記憶メモリとして用いられるとともに、ワーキングメモリとして利用され得る。
【００４５】
モータ制御ボード８２は、たとえばＤＳＰ(Digital Signal Processor)で構成され、右腕、左腕、頭および眼等の身体部位を駆動するためのモータを制御する。すなわち、モータ制御ボード８２は、ＣＰＵ７６からの制御データを受け、右肩関節５６ＲのＸ，ＹおよびＺ軸のそれぞれの角度を制御する３つのモータと右肘関節６０Ｒの軸Ｗの角度を制御する１つのモータを含む計４つのモータ（図４ではまとめて、「右腕モータ」として示す。）８８の回転角度を調節する。また、モータ制御ボード８２は、左肩関節５６ＬのＡ，ＢおよびＣ軸のそれぞれの角度を制御する３つのモータと左肘関節６０ＬのＤ軸の角度を制御する１つのモータとを含む計４つのモータ（図４ではまとめて、「左腕モータ」として示す。）９０の回転角度を調節する。モータ制御ボード８２は、また、首関節６８のＳ，ＴおよびＵ軸のそれぞれの角度を制御する３つのモータ（図４ではまとめて、「頭部モータ」として示す。）９２の回転角度を調節する。モータ制御ボード８２は、また、腰モータ５０、および車輪３４を駆動する２つのモータ（図４ではまとめて、「車輪モータ」として示す。）３６を制御する。さらに、モータ制御ボード８２は、右眼球部７４Ｒのα軸およびβ軸のそれぞれの角度を制御する２つのモータ（図４ではまとめて、「右眼球モータ」として示す。）９４の回転角度を調節し、また、左眼球部７４Ｌのα軸およびβ軸のそれぞれの角度を制御する２つのモータ（図４ではまとめて、「左眼球モータ」として示す。）９６の回転角度を調節する。
【００４６】
なお、この実施例の上述のモータは、車輪モータ３６を除いて、制御を簡単化するためにそれぞれステッピングモータまたはパルスモータであるが、車輪モータ３６と同様に、直流モータであってよい。
【００４７】
センサ入力／出力ボード８４も、同様に、ＤＳＰで構成され、各センサやカメラからの信号を取り込んでＣＰＵ７６に与える。すなわち、超音波距離センサ４２の各々からの反射時間に関するデータがこのセンサ入力／出力ボード８４を通して、ＣＰＵ７６に入力される。また、全方位カメラ５２からの映像信号が、必要に応じてこのセンサ入力／出力ボード８４で所定の処理が施された後、ＣＰＵ７６に入力される。眼カメラ５４からの映像信号も、同様にして、ＣＰＵ７６に与えられる。また、タッチセンサ６４からの信号がセンサ入力／出力ボード８４を介してＣＰＵ７６に与えられる。
【００４８】
スピーカ７２には音声入力／出力ボード８６を介して、ＣＰＵ７６から、合成音声データが与えられ、それに応じて、スピーカ７２からはそのデータに従った音声または声が出力される。また、マイク２４からの音声入力が、音声入力／出力ボード８６を介してＣＰＵ７６に取り込まれる。
【００４９】
また、ＣＰＵ７６には、バス７８を通して、通信ＬＡＮボード９８が接続される。この通信ＬＡＮボード９８も、同様に、ＤＳＰで構成され、ＣＰＵ７６から与えられた送信データを無線通信装置１００に与え、無線通信装置１００から送信データを送信させる。また、通信ＬＡＮボード９８は無線通信装置１００を介してデータを受信し、受信データをＣＰＵ７６に与える。
【００５０】
図１に戻って、システム１０はまた、制御装置（ロボット制御装置）としてのコンピュータ２０を含み、このコンピュータ２０としては、パーソナルコンピュータ（ＰＣ）或いはワークステーション（ＷＳ）を用いることができる。周知のとおり、コンピュータ２０は、ＣＰＵ、ＲＯＭ、ＲＡＭおよびＨＤＤ等を備えている。また、コンピュータ２０には、モーションキャプチャシステム２２およびデータベース２４が接続される。さらに、上述したロボット１２は、たとえば、ＨＵＢ（図示せず）に接続されたアクセスポイント（図示せず）を介して無線ＬＡＮによってコンピュータ２０に接続される。
【００５１】
モーションキャプチャシステム（３次元動作計測装置）２２としては、公知のモーションキャプチャシステムが適用される。たとえば、ＶＩＣＯＮ社(http://www.vicon.com/)の光学式のモーションキャプチャシステムを用いることができる。図示は省略するが、モーションキャプチャシステム２２は、ＰＣ或いはＷＳのようなコンピュータを含み、このコンピュータとコンピュータ２０とが、たとえばＨＵＢを介して有線または無線ＬＡＮによって互いに接続される。このモーションキャプチャシステム２２は、人間１４の身体動作に関する数値データ（動作情報）を検出して、コンピュータ２０に送信する。コンピュータ２０は、モーションキャプチャシステム２２から送信される数値データを後述するデータベース２４に記憶（蓄積）する。
【００５２】
図４を用いて具体的に説明すると、モーションキャプチャシステム２２においては、複数（少なくとも３つ）の赤外線照射機能を有するカメラ２２ａが、人間１４に対して異なる方向に配置される。人間１４には、複数（この実施例では、１０個）の赤外線反射マーカ３０が取り付けられる。具体的には、図４からも分かるように、赤外線反射マーカ３０は、人間１４の頭頂、眼の上（額）、胸、肩、肘、手先（手首）のように、人間１４の身体動作を特徴づける特徴点すなわち人間１４の身体動作を特定可能な部分（部位）に取り付けられる。
【００５３】
モーションキャプチャシステム２２のコンピュータは、カメラ２２ａから画像データをたとえば６０Hz（１秒間に６０フレーム）で取得し、画像データの画像処理によって、その計測時の全ての画像データにおける各マーカ３０の２次元位置を抽出する。そして、コンピュータは、画像データにおける各マーカ３０の２次元位置に基づいて、実空間における各マーカ３０の３次元位置を算出し、算出した３次元位置の座標データ（数値データ）を３次元動作データとして、コンピュータ２０に送信する。
【００５４】
コンピュータ２０は、モーションキャプチャシステム２２から１フレーム（１／６０秒）毎に送信される３次元動作データを取得（検出）し、データベース（３次元動作ＤＢ）２４に入力（記憶）する。また、コンピュータ２０は、ロボット１２から送信されるロボット情報（後述する、コミュニケーション行動についての情報および行動ステータス）を検出し、３次元動作データに対応づけて３次元動作ＤＢ２４に記憶する。ただし、ロボット１２は、ロボット情報を、当該ロボット情報に含まれるコミュニケーション行動についての情報（行動情報：この実施例では、行動モジュール）が示すコミュニケーション行動を実行したときに、一度だけコンピュータ２０に送信する。このため、コンピュータ２０は、ロボット情報を受信すると、次のロボット情報を受信するまで、今回受信したロボット情報を、１フレーム毎に検出される３次元動作データに対応づけるようにしてある。
【００５５】
たとえば、ロボット１２は、自身のコンピュータ（ＣＰＵ７６）の指示に従う行動モジュールが示す行動すなわち身体動作を行う（通常状態の動作）。このとき、ＣＰＵ７６は、メモリ８０に記憶された行動モジュールをランダムまたは所定のルールに従って読み出して、実行する。また、ロボット１２は、コンピュータ２０から行動モジュールの名称ないし識別子を指示されると、当該行動モジュールが示す身体動作を行う（割り込み状態の動作）。ただし、通常状態の動作（通常動作）では、ロボット１２は人間１４の身体動作等に拘わらず、自発的に行う。一方、割り込み状態の動作（割り込み行動）では、ロボット１２は人間１４の身体動作に起因した動作を行う。
【００５６】
上述したように、ロボット１２のロボット情報（後述する、行動モジュールおよび行動ステータス）と人間１４の３次元動作データとを対応づけて記憶しておくので、人間１４の過去の身体動作と人間１４の現在の身体動作とを比較し、類似または一致する過去の身体動作に対応づけられたロボット１２の身体動作（ロボット情報に含まれる行動情報が示す動作）を引き出すことができる。ただし、同じ人間１４が同じ身体動作を行った場合であっても３次元動作データが完全に一致することはほとんど有り得ないため、実際には、類似する過去の身体動作に対応づけられたロボット１２の身体動作を引き出すようにしてある。
【００５７】
ただし、人間１４の身体動作（行動）には、２通りの可能性があるため、ロボット１２の行動と人間１４の行動との対応関係を記録しておき、現在の人間１４の行動に類似する過去の行動に対応づけられた行動を単にロボット１２に実行させた場合には、２通りの行動が混ざってしまうのである。１つは、ロボット１２の行動に対する行動（たとえば、ロボット１４が握手を求めてきたら、人間１２も握手し返す。）であり、もう１つは、ロボット１２の行動を検索する行動（人間１４がロボット１２と握手するために、ロボット１２に手を差し出す。）である。
【００５８】
そこで、この実施例では、ロボット１２が行動するときの状態（行動ステータス）もロボット情報に含めて記憶しておき、人間１４の現在の身体動作に類似する過去の身体動作を検索する場合に、行動ステータスを考慮することにより、上述したような２つの行動を分別して、適切なコミュニケーション行動を実行できるようにしてある。
【００５９】
具体的には、コンピュータ２０は、ロボット１２が自ら行動を取る状態（通常状態）または人間１４の行動に対する行動を取る状態（割り込み状態）を示すフラグをメモリ８０（ＲＡＭ）に設けておき、当該フラグのオン／オフを考慮して現在の身体動作に類似する身体動作を検索し、ロボット１２に割り込みによるコミュニケーション行動（割り込み行動）を実行させるようにしてある。
【００６０】
図５（Ａ）、（Ｂ）、（Ｃ）は、それぞれ、ロボット１２のコミュニケーション行動と人間１４の身体動作との例を示す図解図である。図５（Ａ）は、ロボット１２と人間１４とが握手している様子を示している。図５（Ｂ）では、ロボット１２は、人間１４に対して抱っこ（ハグ）しようとしている。一方、人間１４は、両手を上に上げている。図５（Ｃ）では、ロボット１２は万歳をしようとしている。一方、人間１４は、図面では分かり難いが、左手を振っている。
【００６１】
このように、コミュニケーションを行っているロボット１２のロボット情報と人間１４の３次元動作データとを対応づけて３次元動作ＤＢ２４に記憶しておき、人間１４がロボット１２に対して何らかの身体動作を行ったときに、当該身体動作を過去の身体動作と比較して、もっとも近似（類似）する身体動作に対応して記録されたロボット１２のコミュニケーション行動を実行するようにしてある。したがって、ロボット１２が人間１４に対して何らかのコミュニケーション行動を取るだけでなく、人間１４がロボット１２に対して行動（身体動作）を取ることができる。
【００６２】
ただし、コンピュータ２０は、ＤＢ２４にデータが或る程度蓄積されるまでは、人間１４との間でコミュニケーションを行う場合であっても、ロボット１２に割り込み実行させるコミュニケーション行動の検索を実行しない。言うまでもなく、コミュニケーションを開始した当初では、３次元動作データおよびロボット情報がＤＢ２４に十分蓄積されておらず、人間１４の身体動作に対する正しいコミュニケーション行動をロボット１２に実行させることができないためである。この実施例では、ロボット１２と人間１４との間で、一定時間（たとえば、１０分）コミュニケーションを行うまでは、コンピュータ２０は検索を実行しない。したがって、この一定時間においては、ロボット１２は、通常状態でのみコミュニケーション行動を行うことになる。
【００６３】
図６に示すように、コンピュータ２０は、同時刻における、３次元動作データと、行動モジュールおよび行動ステータスとを対応付けて３次元動作ＤＢ２４に記憶する。図６の（１）で示す期間においては、行動モジュールが「握手」であり、そのときの行動ステータスが「通常」であり、それらに対応して、当該期間における３次元動作データが記憶される。また、図６の（２）に示す期間においては、行動モジュールが「抱っこ」であり、そのときの行動ステータスが「通常」であり、それらに対応して、当該期間における３次元動作データが記憶される。さらに、図６の（３）に示す期間においては、行動モジュールが「万歳」であり、そのときの行動ステータスが「通常」であり、それらに対応して、当該期間における３次元動作データが記憶される。
【００６４】
ただし、上述したように、人間１４には複数のマーカ３０が取り付けられるため、３次元動作データは多次元となるが、つまり波形は複数現れるが、分かり易く示すために、図６では、或る１つのマーカ３０を観測した場合に得られる１の波形のみを示してある。以下、同様である。
【００６５】
また、図示は省略するが、後述するように、検索によるコミュニケーション行動が実行される場合には、つまり割り込み行動が実行される場合には、行動ステータスとして「割り込み（インタラプト）」が記憶されることになる。
【００６６】
したがって、図７に示すように、３次元動作ＤＢ２４には、時系列に従って、３次元動作データとこれに対応する行動モジュールおよび行動ステータスとが順次記憶される。ただし、３次元動作データは、上述したように、時系列に従う数値データの集合である。
【００６７】
このように、ＤＢ２４には、データが蓄積されるが、上述したように、一定時間が経過すると、コンピュータ２０は検索行動処理を実行し、人間１４の現在の身体動作に類似する過去の身体動作を検出し、検出した身体動作に対応して記憶された行動モジュールに従う行動をロボット１２に割り込みで実行させる。
【００６８】
なお、後述するように、コンピュータ２０はデータを蓄積する処理（ログ保存処理）と検索行動処理とを並列的に実行する。
【００６９】
具体的には、検索処理では、現在取得した３次元動作データ（以下、「現３次元動作データ」という。）をクエリとして、ＤＢ２４に蓄積された３次元動作データ（以下、「前３次元動作データ」という。）と順次比較する。図８に示すように、この実施例では、クエリは、現在時刻を含む過去Ｌフレーム分の３次元動作データである。また、前３次元動作データと現３次元動作データすなわちクエリとを比較する場合には、図８に示すように、Ｌフレーム単位で１フレームずつずらすようにして、ＤＢ２４に記憶されたすべての３次元動作データと比較される。比較する手法としては、文字列比較によく用いられる手法（ＬＣＳＳ：Longest Common Subsequence）が適用される。たとえば、ユークリッド距離による方法も考えられるが、時間的な伸縮を許さないため、同一人物が同じ行動を行ったとしても時間的な長さや速さが異なる人間１４の身体動作を比較するのには適していない。また、ＤＴＷ（Dynamic Time Warping）による方法も考えられるが、現３次元動作データに含まれるすべての点を前３次元動作データのいずれかの点に必ず対応づけるようにするため、３次元動作データの一部が欠落している場合であってもいずれかのデータに対応づけようとするため、比較結果の信頼性に欠けてしまう。
【００７０】
そこで、この実施例では、ＬＣＳＳを適用して、各マーカ３０についての前３次元動作データと現３次元動作データとを比較して、つまり、３次元座標同士を比較して、類似度が求められる。各マーカ３０の類似度の総和が人間１４の身体動作同士の類似度に決定される。ただし、類似するか否かを判断するための閾値（条件）は、予め試験等により経験的に得られた値に設定される。
【００７１】
ここで、図９（Ａ）に示すように、たとえば、クエリ（現３次元動作データ）とａ１の期間における前３次元動作データとを比較した結果、互いに類似していると判断されたと仮定する。このとき、図９（Ａ）のａ１およびａ２で示す期間におけるロボット１２の行動ステータスは「通常」であるため、コンピュータ２０は、類似するａ１に示す期間における前３次元動作データが示す身体動作とロボット１２の「握手」の動作とが対応していると判断し、「握手」についてのカウント値を１加算する。
【００７２】
しかし、図９（Ｂ）に示すように、ｂ２で示す期間におけるロボット１２の行動ステータスが「割り込み」である場合には、コンピュータ２０は、ｂ１で示す期間における３次元動作データが示す身体動作はｂ２で示す期間におけるロボット１２の「抱っこ」の動作と対応していると判断し、「抱っこ」についてのカウント値を１加算する。
【００７３】
なお、図９（Ｂ）においても、クエリ（現３次元動作データ）とｂ１の期間における前３次元動作データとが類似していると判断されたことを前提としてある。
【００７４】
このように、行動ステータスが「割り込み」である場合には、人間１４の身体動作と同時刻におけるロボット１２のコミュニケーション行動の次のコミュニケーション行動とが対応していると判断するようにしてある。これは、割り込みでコミュニケーション行動を実行している場合の人間１４の身体動作をクエリとしないためである。たとえば、人間１４が過去にロボット１２に握手してもらい、もう一度握手してもいたくて、過去と同じ身体動作をしたとする。このとき、検索結果が握手するというコミュニケーション行動になり、人間１４はロボット１２にしてもらいたい行動が出たので、ロボット１２と握手する。すると、このときの人間１４の握手するという身体動作がクエリになってしまうと、再度ロボット１２に握手するという割り込みが入ってしまい、延々と握手が続いてしまうことになるのを防止するためである。
【００７５】
このようにして、コンピュータ２０は、クエリとすべての前３次元動作データとを比較し、クエリと類似している３次元動作データに対応すると考えられるロボット１２の行動情報をカウントし、最もカウント値が大きい行動情報が示す行動をロボット１２に割り込み実行させる。つまり、コンピュータ２０は、カウント値が最も大きい行動情報（行動モジュール）が示す行動の割り込み実行の指示をロボット１２に送信する。ただし、現在、ロボット１２が割り込みでコミュニケーション行動を実行中である場合には、コンピュータ２０は、割り込み実行の指示を送信しない。また、カウント値が最も大きい行動情報（行動モジュール）が前回割り込み実行を指示した行動情報と同じである場合にも、コンピュータ２０は、割り込み実行の指示を送信しない。これは、同じコミュニケーション行動が繰り返し実行されるのを回避するためである。
【００７６】
図１０はコンピュータ２０のログ保存処理を示すフロー図である。この図１０を参照して、コンピュータ２０はログ保存処理を開始すると、ステップＳ１で、モーションキャプチャシステム２２からのキャプチャデータすなわち３次元動作データをメモリ（たとえば、ＨＤＤに設けられる仮想メモリ。以下同じ。）に保存（一時保存）する。続く、ステップＳ３では、ロボット１２から送信されたロボット情報すなわち行動モジュール（行動情報）および実行ステータスをメモリに保存（一時保存）する。そして、ステップＳ５で、同時刻における、キャプチャデータ（３次元動作データ）と、行動モジュールおよび行動ステータスとを対応付けてＤＢ２４に保存して、ログ保存処理を終了する。
【００７７】
このログ保存処理は、一定時間毎に実行され、ロボット１２のコミュニケーション行動と人間１４の身体動作とがＤＢ２４に記録される。ただし、ＤＢ２４が一杯になると、最も古いデータに上書きするように、ＤＢ２４は更新される。
【００７８】
図１１〜図１３は、コンピュータ２０の検索行動処理を示すフロー図である。この検索行動処理は、上述したように、一定時間が経過した後に、ログ保存処理と並列的に実行される。図１１を参照して、コンピュータ２０は検索行動処理を開始すると、ステップＳ１１で、モーションキャプチャシステム２２からのキャプチャデータすなわち３次元動作データをメモリ８０に保存（一時保存）する。次に、ステップＳ１３では、現在時刻Ｃを保存（記憶）し、ステップＳ１５で、変数（時刻）Ｔに０を代入する。続くステップＳ１７では、時刻Ｔ（フレーム）からＬフレーム分のキャプチャデータ（３次元動作データ）をＤＢ２４から取得し、メモリ８０にコピーする。そして、ステップＳ１９で、入力されたキャプチャデータすなわち現３次元動作データ（クエリ）とＤＢ２４からコピーしたキャプチャデータすなわち前３次元動作データとが類似するかどうかを判断する。
【００７９】
ステップＳ１９で“ＮＯ”であれば、つまり２つのキャプチャデータが類似していなければ、そのまま図１３に示すステップＳ３７に進む。しかし、ステップＳ１９で“ＹＥＳ”であれば、つまり２つのキャプチャデータが類似していれば、図１２に示すステップＳ２１で、時刻Ｔ＋Ｌ＋１のロボット１２のコミュニケーション行動が存在するかどうかを判断する。ステップＳ２１で“ＮＯ”であれば、つまり時刻Ｔ＋Ｌ＋１のロボット１２のコミュニケーション行動が存在しなければ、そのままステップＳ２５に進む。一方、ステップＳ２１で“ＹＥＳ”であれば、つまり時刻Ｔ＋Ｌ＋１のロボット１２のコミュニケーション行動が存在すれば、ステップＳ２３で、時刻Ｔ＋Ｌ＋１のロボット１２の行動ステータスが「割り込み」であるかどうかを判断する。
【００８０】
ステップＳ２３で“ＮＯ”であれば、つまり時刻Ｔ＋Ｌ＋１のロボット１２の行動ステータスが「通常」であれば、ステップＳ２５で、時刻Ｔのロボットの行動（行動モジュール）をメモリ８０に読込み、ステップＳ２９に進む。しかし、ステップＳ２３で“ＹＥＳ”であれば、つまり時刻Ｔ＋Ｌ＋１のロボット１２の行動ステータスが「割り込み」であれば、ステップＳ２７で、時刻Ｔ＋Ｌ＋１のロボット１２の行動モジュールをメモリ８０に読込み、ステップＳ２９に進む。
【００８１】
ステップＳ２９では、メモリ８０に作成された表（図示せず）に当該行動（行動モジュール）が記述されているかどうかを判断する。ステップＳ２９で“ＹＥＳ”であれば、つまりステップＳ２５またはＳ２７で読み込まれた行動がメモリ８０の表に存在すれば、ステップＳ３１で、当該行動の行動カウンタを１加算（インクリメント）して、図１３に示すステップＳ３７に進む。一方、ステップＳ２９で“ＮＯ”であれば、つまりステップＳ２５またはＳ２７で読み込まれた行動がメモリ８０の表に存在しなければ、ステップＳ３３で、メモリ８０の表に当該行動の欄を設け、ステップＳ３５で、当該行動に対応する行動カウンタを０に設定し、ステップＳ３１に進む。ただし、検索行動処理を開始した当初では、表自体が作成されていないため、ステップＳ３３では、表が作成されるとともに、該当する行動の欄が設けられる。
【００８２】
図１３に示すように、ステップＳ３７では、現在時刻Ｃ−Ｌと時刻Ｔ＋Ｌとが一致する（Ｃ−Ｌ＝Ｔ＋Ｌ）かどうかを判断する。つまり、クエリとＤＢ２４に保存されているすべての３次元動作データとの類似度を判定し、ロボット１２に割り込み実行させるコミュニケーション行動の検索を終了したかどうかを判断している。ステップＳ３７で“ＮＯ”であれば、つまり現在時刻Ｃ−Ｌと時刻Ｔ＋Ｌとが一致しなければ、ステップＳ３９で、時刻Ｔに１フレーム加算する。一方、ステップＳ３７で“ＹＥＳ”であれば、つまり現在時刻Ｃ−Ｌと時刻Ｔ＋Ｌとが一致すれば、ステップＳ４１で、現在ロボット１２が割り込み実行中かどうかを判断する。図示は省略したが、コンピュータ２０はロボット１２が割り込み実行中か否かを示すフラグ（割り込み中フラグ）を記憶しており、当該フラグのオン／オフに基づいて、ロボット１２が割り込み実行中であるかどうかを判断する。ただし、割り込み中フラグは、コンピュータ２０から割り込みによるコミュニケーション行動の実行を指示したときにオンされ、ロボット１２から送信される行動ステータスが通常状態に変化するとオフされる。
【００８３】
ステップＳ４１で“ＹＥＳ”であれば、つまり現在ロボット１２が割り込み実行中であれば、そのまま検索行動処理を終了する。一方、ステップＳ４１で“ＮＯ”であれば、つまり現在ロボット１２が通常実行中であれば、ステップＳ４３で、カウント値が最大の行動カウンタに対応する行動（行動モジュール）を特定し、ステップＳ４５で、特定した行動が前回実行した行動と同じであるかどうかを判断する。ステップＳ４５で“ＹＥＳ”であれば、つまり特定した行動が前回実行した行動と同じであれば、同じ行動が繰り返し実行されるのを回避すべく、そのまま検索行動処理を終了する。一方、ステップＳ４５で“ＮＯ”であれば、つまり特定した行動が前回実行した行動と異なれば、ステップＳ４７で、特定した行動（行動モジュール）の実行をロボット１２に命令（指示）して、検索行動処理を終了する。
【００８４】
この実施例によれば、コミュニケーションを行う人間の行動を記録するとともに、ロボットの行動およびそのときのステータスを記憶するので、ロボットに通常行動および検索行動を実行させることができる。つまり、人間の行動からロボットの行動を引き出すことができる。
【００８５】
また、この実施例では、コミュニケーション行動を行う人間の動作を記憶しておき、それを用いて当該人間に対する行動をロボットに実行させるので、各人間に応じたコミュニケーションを取ることができる。したがって、たとえば、ロボット１２が人物Ａとコミュニケーション行動を終了した後に、人物Ｂとのコミュニケーション行動を実行する場合には、コンピュータ２０は、たとえば、３次元動作ＤＢ２４を消去するようにすればよい。
【００８６】
なお、この実施例では、ロボットが特定の１人の人間との間でコミュニケーションを取る場合について説明したが、時間帯が異なれば、２人以上の人間との間でコミュニケーションを取ることも可能である。かかる場合には、各人間１４を識別可能にしておき、人間１４毎の３次元動作ＤＢを設け、ロボット１２とコミュニケーションを行っている人間１４を特定し、特定した人間１４の身体動作に応じて、特定した人間１４についての３次元動作ＤＢを検索して、ロボット１２の行動を引き出すようにすればよい。各人間１４は、映像や識別情報により、識別可能である。映像での識別は、たとえば、各人間１４に異なる色や異なるマークの付された服を着させておき、これをＣＣＤカメラ等のカメラで撮影して得られる画像データを解析することにより実現可能である。識別情報での識別は、各人間１４に識別情報の異なるタグを所持または装着しておき、タグが発信する識別情報を解析することにより実現可能である。
【図面の簡単な説明】
【００８７】
【図１】図１はこの発明のコミュニケーションロボットシステムの一例を示す図解図である。
【図２】図２は図１実施例に示すロボットの外観を説明するための図解図である。
【図３】図３は図１および図２に示すロボットの電気的な構成を示す図解図である。
【図４】図４はモーションキャプチャシステムで検出するマーカの人間への装着状態を示す図解図である。
【図５】図５はロボットと人間とのコミュニケーション行動の例を示す図解図である。
【図６】図６は図５に示すようなコミュニケーション行動によりデータベースに記憶されるデータの例を示す図解図である。
【図７】図７はデータベースの内容を示す図解図である。
【図８】図８は人間の現在の身体動作と人間の過去の身体動作とを比較する比較方法を示す図解図である。
【図９】図９は人間の現在の身体動作と人間の過去の身体動作とを比較する比較方法を示す図解図である。
【図１０】図１０は図１に示すコンピュータのログ保存処理を示すフロー図である。
【図１１】図１１は図１に示すコンピュータの検索行動処理の一部を示すフロー図である。
【図１２】図１２は図１１に後続する検索行動処理の他の一部を示すフロー図である。
【図１３】図１３は図１１および図１２に後続する検索行動処理のその他の一部を示すフロー図である。
【符号の説明】
【００８８】
１０  …コミュニケーションロボットシステム
１２  …コミュニケーションロボット
１６  …マイク
２０  …コンピュータ
２２  …モーションキャプチャシステム
２４  …データベース
３８  …衝突センサ
４２  …超音波距離センサ
５２  …全方位カメラ
５４  …眼カメラ
６４  …タッチセンサ
７６  …ＣＰＵ
８０  …メモリ
８２  …モータ制御ボード
８４  …センサ入力／出力ボード
８６  …音声入力／出力ボード
８８−９６  …モータ
９８  …通信ＬＡＮボード
１００  …無線通信装置
【図１】
2006205343.tif 000003
【図２】
2006205343.tif 000004
【図３】
2006205343.tif 000005
【図４】
2006205343.tif 000006
【図５】
2006205343.tif 000007
【図６】
2006205343.tif 000008
【図７】
2006205343.tif 000009
【図８】
2006205343.tif 000010
【図９】
2006205343.tif 000011
【図１０】
2006205343.tif 000012
【図１１】
2006205343.tif 000013
【図１２】
2006205343.tif 000014
【図１３】
2006205343.tif 000015