(57)【特許請求の範囲】
【請求項１】
少なくとも音声認識結果に基づいて行動するロボットを制御するロボット制御装置であって、
音声データの入力を受ける音声入力手段と、
前記ロボットの状態の認識結果を示す状態認識情報を生成する状態認識情報生成手段と、
前記ロボットの姿勢の遷移を示す姿勢遷移情報を生成する姿勢遷移情報生成手段と、
前記ロボットが歩行動作を行っている場合に発生するノイズ成分に対応するデータを記憶する記憶手段と、
前記状態認識情報生成手段により生成された前記状態認識情報、もしくは、前記姿勢遷移情報生成手段により生成された前記姿勢遷移情報を基に、前記音声入力手段により入力された前記音声データにおける音声認識を行う区間を判別し、判別した音声認識を行う区間の前記音声データを認識する認識する認識手段と
を備え、
前記認識手段は、前記姿勢遷移情報を基に前記ロボットが前記歩行動作を行っていることを判別した場合、前記記憶手段により記憶されている前記ノイズ成分に対応するデータを用いて、前記音声データをフィルタリングした後の前記音声データを認識する
ことを特徴とするロボット制御装置。
【請求項２】
前記姿勢遷移情報は、前記ロボットが有する複数の駆動部のうちのいずれの前記駆動部が駆動動作をするかを示す情報を含み、
前記認識手段は、駆動する前記駆動部の位置が、前記音声入力手段に近い場合、前記音声データの認識を行わない
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項３】
前記認識手段は、前記ロボットが前記歩行動作を行っている場合、前記歩行動作のために発生したノイズ成分を含むフレームを除いた前記音声データを認識する
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項４】
前記姿勢遷移情報は、前記ロボットが有する複数の駆動部のうちのいずれの前記駆動部が駆動動作をするかを示す情報を含み、
前記認識手段は、前記姿勢遷移情報を基に、前記駆動部が駆動することにより発生するノイズを考慮して音声認識を行う
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項５】
前記状態認識情報は、前記ロボットがユーザに触れられているか否かを示す情報を含み、
前記認識手段は、前記状態認識情報を基に、前記ユーザが前記ロボットに触れているために発生するノイズを考慮して音声認識を行う
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項６】
前記ロボットの状態もしくは姿勢の遷移により発生するノイズに対応した所定の閾値を記憶する記憶手段と、
前記認識手段が音声認識を行っていない場合の環境音を推定する推定手段と
を更に備え、
前記認識手段は、前記状態認識情報生成手段により生成された前記状態認識情報、もしくは、前記姿勢遷移情報生成手段により生成された前記姿勢遷移情報を基に、前記記憶手段に記憶されている前記閾値および前記推定手段により推定された前記環境音を用いて、音声認識を行う区間の開始を判別する
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項７】
前記ロボットの状態もしくは姿勢の遷移により発生するノイズに対応した所定の閾値を記憶する記憶手段を更に備え、
前記認識手段は、前記状態認識情報生成手段により生成された前記状態認識情報、もしくは、前記姿勢遷移情報生成手段により生成された前記姿勢遷移情報を基に、前記記憶手段に記憶されている前記閾値を用いて、音声認識を行う区間の開始を判別する
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項８】
前記音声入力手段により入力された前記音声データを基に、前記ロボットの状態もしくは姿勢の遷移により発生するノイズに対応した閾値を設定する設定手段を更に備え、
前記認識手段は、前記設定手段により設定された前記閾値を用いて、前記音声入力手段により入力された前記音声データにおける音声認識を行う区間の開始を判別する
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項９】
少なくとも音声認識結果に基づいて行動するロボットを制御するロボット制御装置のロボット制御方法において、
音声データの入力を受ける音声入力ステップと、
前記ロボットの状態の認識結果を示す状態認識情報を生成する状態認識情報生成ステップと、
前記ロボットの姿勢の遷移を示す姿勢遷移情報を生成する姿勢遷移情報生成ステップと、
前記状態認識情報生成ステップの処理により生成された前記状態認識情報、もしくは、前記姿勢遷移情報生成ステップの処理により生成された前記姿勢遷移情報を基に、前記音声入力ステップの処理により入力された前記音声データにおける音声認識を行う区間を判別し、判別した音声認識を行う区間の前記音声データを認識する認識ステップと
を含み、
前記認識ステップの処理によって、前記姿勢遷移情報を基に前記ロボットが歩行動作を行っていることを判別した場合、記憶手段により記憶されている前記ロボットが前記歩行動作を行っている場合に発生するノイズ成分に対応するデータを用いて、前記音声データをフィルタリングした後の前記音声データを認識する
ことを特徴とするロボット制御方法。
【請求項１０】
少なくとも音声認識結果に基づいて行動するロボットを制御するロボット制御装置用のプログラムであって、
音声データの入力を受ける音声入力ステップと、
前記ロボットの状態の認識結果を示す状態認識情報を生成する状態認識情報生成ステップと、
前記ロボットの姿勢の遷移を示す姿勢遷移情報を生成する姿勢遷移情報生成ステップと、
前記状態認識情報生成ステップの処理により生成された前記状態認識情報、もしくは、前記姿勢遷移情報生成ステップの処理により生成された前記姿勢遷移情報を基に、前記音声入力ステップの処理により入力された前記音声データにおける音声認識を行う区間を判別し、判別した音声認識を行う区間の前記音声データを認識する認識ステップと
を含み、
前記認識ステップの処理によって、前記姿勢遷移情報を基に前記ロボットが歩行動作を行っていることを判別した場合、記憶手段により記憶されている前記ロボットが前記歩行動作を行っている場合に発生するノイズ成分に対応するデータを用いて、前記音声データをフィルタリングした後の前記音声データを認識する
ことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ロボット制御装置およびロボット制御方法、並びに記録媒体に関し、特に、音声認識装置による音声認識結果に基づいて行動するロボットに用いて好適なロボット制御装置およびロボット制御方法、並びに記録媒体に関する。
【０００２】
【従来の技術】
近年においては、例えば、玩具等として、ユーザが発した音声を音声認識し、その音声認識結果に基づいて、ある仕草をしたり、合成音を出力する等の行動を行うロボット（本明細書においては、ぬいぐるみ状のものを含む）が製品化されている。
【０００３】
【発明が解決しようとする課題】
このようなロボットは、常時、音声入力を受け付けるようになされている。しかしながら、ロボットの動作中に発生するアクチュエータのノイズ、ロボットの歩行時に発生する接地パルス音、あるいは、ユーザがロボットに触れることにより発生するタッチノイズなどが、ユーザの発話した音声であると誤検知されてしまう場合があった。
【０００４】
本発明はこのような状況に鑑みてなされたものであり、ロボットの状態や行動に基づいた音声認識を行うことにより、ユーザの発話した音声と、ロボットの動作などにより発生するノイズとを区別して、誤認識を防ぐようにするものである。
【０００５】
【課題を解決するための手段】
本発明のロボット制御装置は、音声データの入力を受ける音声入力手段と、ロボットの状態の認識結果を示す状態認識情報を生成する状態認識情報生成手段と、ロボットの姿勢の遷移を示す姿勢遷移情報を生成する姿勢遷移情報生成手段と、ロボットが歩行動作を行っている場合に発生するノイズ成分に対応するデータを記憶する記憶手段と、状態認識情報生成手段により生成された状態認識情報、もしくは、姿勢遷移情報生成手段により生成された姿勢遷移情報を基に、音声入力手段により入力された音声データにおける音声認識を行う区間を判別し、判別した音声認識を行う区間の音声データを認識する認識する認識手段とを備え認識手段は、姿勢遷移情報を基にロボットが歩行動作を行っていることを判別した場合、記憶手段により記憶されているノイズ成分に対応するデータを用いて、音声データをフィルタリングした後の音声データを認識することを特徴とする。
【０００６】
姿勢遷移情報には、ロボットが有する複数の駆動部のうちのいずれの駆動部が駆動動作をするかを示す情報を含ませることができ、認識手段には、駆動する駆動部の位置が、音声入力手段に近い場合、音声データの認識を行わせないようにすることができる。
【０００７】
認識手段には、ロボットが歩行動作を行っている場合、歩行動作のために発生したノイズ成分を含むフレームを除いた音声データを認識させることができる。
【０００９】
姿勢遷移情報には、ロボットが有する複数の駆動部のうちのいずれの駆動部が駆動動作をするかを示す情報を含ませることができ、認識手段には、姿勢遷移情報を基に、駆動部が駆動することにより発生するノイズを考慮して音声認識を行わせることができる。
【００１０】
状態認識情報には、ロボットがユーザに触れられているか否かを示す情報を含ませることができ、認識手段には、状態認識情報を基に、ユーザがロボットに触れているために発生するノイズを考慮して音声認識を行わせることができる。
【００１１】
ロボットの状態もしくは姿勢の遷移により発生するノイズに対応した所定の閾値を記憶する記憶手段と、認識手段が音声認識を行っていない場合の環境音を推定する推定手段とを更に備えさせることができ、認識手段には、状態認識情報生成手段により生成された状態認識情報、もしくは、姿勢遷移情報生成手段により生成された姿勢遷移情報を基に、記憶手段に記憶されている閾値および推定手段により推定された環境音を用いて、音声認識を行う区間の開始を判別させることができる。
【００１２】
ロボットの状態もしくは姿勢の遷移により発生するノイズに対応した所定の閾値を記憶する記憶手段を更に備えさせることができ、認識手段には、状態認識情報生成手段により生成された状態認識情報、もしくは、姿勢遷移情報生成手段により生成された姿勢遷移情報を基に、記憶手段に記憶されている閾値を用いて、音声認識を行う区間の開始を判別させることができる。
【００１３】
音声入力手段により入力された音声データを基に、ロボットの状態もしくは姿勢の遷移により発生するノイズに対応した閾値を設定する設定手段を更に備えさせることができ、認識手段には、設定手段により設定された閾値を用いて、音声入力手段により入力された音声データにおける音声認識を行う区間の開始を判別させることができる。
【００１４】
本発明のロボット制御方法は、音声データの入力を受ける音声入力ステップと、ロボットの状態の認識結果を示す状態認識情報を生成する状態認識情報生成ステップと、ロボットの姿勢の遷移を示す姿勢遷移情報を生成する姿勢遷移情報生成ステップと、状態認識情報生成ステップの処理により生成された状態認識情報、もしくは、姿勢遷移情報生成ステップの処理により生成された姿勢遷移情報を基に、音声入力ステップの処理により入力された音声データにおける音声認識を行う区間を判別し、判別した音声認識を行う区間の音声データを認識する認識ステップとを含み、認識ステップの処理によって、姿勢遷移情報を基にロボットが歩行動作を行っていることを判別した場合、記憶手段により記憶されているロボットが歩行動作を行っている場合に発生するノイズ成分に対応するデータを用いて、音声データをフィルタリングした後の音声データを認識することを特徴とする。
【００１５】
本発明の記録媒体に記録されているプログラムは、音声データの入力を受ける音声入力ステップと、ロボットの状態の認識結果を示す状態認識情報を生成する状態認識情報生成ステップと、ロボットの姿勢の遷移を示す姿勢遷移情報を生成する姿勢遷移情報生成ステップと、状態認識情報生成ステップの処理により生成された状態認識情報、もしくは、姿勢遷移情報生成ステップの処理により生成された姿勢遷移情報を基に、音声入力ステップの処理により入力された音声データにおける音声認識を行う区間を判別し、判別した音声認識を行う区間の音声データを認識する認識ステップとを含み、認識ステップの処理によって、姿勢遷移情報を基にロボットが歩行動作を行っていることを判別した場合、記憶手段により記憶されているロボットが歩行動作を行っている場合に発生するノイズ成分に対応するデータを用いて、音声データをフィルタリングした後の音声データを認識することを特徴とする。
【００１６】
本発明のロボット制御装置、ロボット制御方法、および記録媒体に記録されているプログラムにおいては、音声データが入力され、ロボットの状態の認識結果を示す状態認識情報が生成され、ロボットの姿勢の遷移を示す姿勢遷移情報が生成され、ロボットが歩行動作を行っている場合に発生するノイズ成分に対応するデータが記憶され、生成された状態認識情報、もしくは生成された姿勢遷移情報を基に、入力された音声データにおける音声認識を行う区間を判別し、判別した音声認識を行う区間の音声データが認識され、姿勢遷移情報を基にロボットが歩行動作を行っていることが判別された場合、記憶されているノイズ成分に対応するデータを用いて、音声データがフィルタリングされた後の音声データが認識される。
【００１７】
【発明の実施の形態】
以下、図を参照して、本発明の実施の形態について説明する。
【００１８】
図１は、本発明を適用したロボットの一実施の形態の外観構成例を示しており、図２は、その電気的構成例を示している。
【００１９】
本実施の形態では、ロボットは、例えば、犬等の四つ足の動物の形状のものとなっており、胴体部ユニット２の前後左右に、それぞれ脚部ユニット３Ａ，３Ｂ，３Ｃ，３Ｄが連結されるとともに、胴体部ユニット２の前端部と後端部に、それぞれ頭部ユニット４と尻尾部ユニット５が連結されることにより構成されている。
【００２０】
尻尾部ユニット５は、胴体部ユニット２の上面に設けられたベース部５Ｂから、２自由度をもって湾曲または揺動自在に引き出されている。
【００２１】
胴体部ユニット２には、ロボット全体の制御を行うコントローラ１０、ロボットの動力源となるバッテリ１１、並びにバッテリセンサ１２および熱センサ１３からなる内部センサ部１４などが収納されている。
【００２２】
頭部ユニット４には、「耳」に相当するマイク（マイクロフォン）１５、「目」に相当するＣＣＤ（Charge Coupled Device）カメラ１６、触覚に相当するタッチセンサ１７、「口」に相当するスピーカ１８などが、それぞれ所定位置に配設されている。また、頭部ユニット４には、口の下顎に相当する下顎部４Ａが１自由度をもって可動に取り付けられており、この下顎部４Ａが動くことにより、ロボットの口の開閉動作が実現されるようになっている。
【００２３】
脚部ユニット３Ａ乃至３Ｄそれぞれの関節部分や、脚部ユニット３Ａ乃至３Ｄそれぞれと胴体部ユニット２の連結部分、頭部ユニット４と胴体部ユニット２の連結部分、頭部ユニット４と下顎部４Ａの連結部分、並びに尻尾部ユニット５と胴体部ユニット２の連結部分などには、図２に示すように、それぞれアクチュエータ３ＡＡ1乃至３ＡＡK、３ＢＡ1乃至３ＢＡK、３ＣＡ1乃至３ＣＡK、３ＤＡ1乃至３ＤＡK、４Ａ1乃至４ＡL、５Ａ1および５Ａ2が配設されている。
【００２４】
また、脚部ユニット３Ａ乃至３Ｄそれぞれの接地部分（足の裏にあたる部分）には、センサ３Ａ1乃至センサ３Ｄ1が設けられ、脚部ユニット３Ａ乃至３Ｄのそれぞれが、接地しているか否か（例えば、床などに触れているか否か）を検知して、コントローラ１０に出力する。
【００２５】
頭部ユニット４におけるマイク１５は、ユーザからの発話を含む周囲の音声（音）を集音し、得られた音声信号を、コントローラ１０に送出する。ＣＣＤカメラ１６は、周囲の状況を撮像し、得られた画像信号を、コントローラ１０に送出する。
【００２６】
タッチセンサ１７は、例えば、頭部ユニット４の上部に設けられており、ユーザからの「撫でる」や「たたく」といった物理的な働きかけにより受けた圧力を検出し、その検出結果を圧力検出信号としてコントローラ１０に送出する。
【００２７】
胴体部ユニット２におけるバッテリセンサ１２は、バッテリ１１の残量を検出し、その検出結果を、バッテリ残量検出信号としてコントローラ１０に送出する。熱センサ１３は、ロボット内部の熱を検出し、その検出結果を、熱検出信号としてコントローラ１０に送出する。
【００２８】
コントローラ１０は、ＣＰＵ（Central Processing Unit）１０Ａやメモリ１０Ｂ等を内蔵しており、ＣＰＵ１０Ａにおいて、メモリ１０Ｂに記憶された制御プログラムが実行されることにより、各種の処理を行う。
【００２９】
すなわち、コントローラ１０は、マイク１５、ＣＣＤカメラ１６、タッチセンサ１７、センサ３Ａ1乃至センサ３Ｄ1、バッテリセンサ１２、および熱センサ１３から与えられる音声信号、画像信号、圧力検出信号、バッテリ残量検出信号、および熱検出信号に基づいて、周囲の状況や、ユーザからの指令、ユーザからの働きかけなどの有無を判断する。
【００３０】
更に、コントローラ１０は、この判断結果等に基づいて、続く行動を決定し、その決定結果に基づいて、アクチュエータ３ＡＡ1乃至３ＡＡK、３ＢＡ1乃至３ＢＡK、３ＣＡ1乃至３ＣＡK、３ＤＡ1乃至３ＤＡK、４Ａ1乃至４ＡL、５Ａ1、および５Ａ2のうちの必要なものを駆動させる。これにより、頭部ユニット４を上下左右に振らせたり、下顎部４Ａを開閉させる。さらには、尻尾部ユニット５を動かせたり、各脚部ユニット３Ａ乃至３Ｄを駆動して、ロボットを歩行させるなどの行動を行わせる。
【００３１】
また、コントローラ１０は、必要に応じて、合成音を生成し、スピーカ１８に供給して出力させたり、ロボットの「目」の位置に設けられた図示しないＬＥＤ（Light Emitting Diode）を点灯、消灯または点滅させる。
【００３２】
以上のようにして、ロボットは、周囲の状況等に基づいて自律的に行動をとるようになっている。
【００３３】
次に、図３は、図２のコントローラ１０の機能的構成例を示している。なお、図３に示す機能的構成は、ＣＰＵ１０Ａが、メモリ１０Ｂに記憶された制御プログラムを実行することで実現されるようになっている。
【００３４】
コントローラ１０は、特定の外部状態を認識するセンサ入力処理部３１、センサ入力処理部３１の認識結果を累積して、感情や、本能、成長の状態を表現するモデル記憶部３２、センサ入力処理部３１の認識結果等に基づいて、続く行動を決定する行動決定機構部３３、行動決定機構部３３の決定結果に基づいて、実際にロボットに行動を起こさせる姿勢遷移機構部３４、アクチュエータ３ＡＡ1乃至アクチュエータ５Ａ2を駆動制御する制御機構部３５、合成音を生成する音声合成部３６、並びに、音声合成部３６において合成された合成音の出力を制御する出力制御部３７から構成されている。
【００３５】
センサ入力処理部３１は、マイク１５、ＣＣＤカメラ１６、タッチセンサ１７、もしくは、センサ３Ａ1乃至センサ３Ｄ1等から与えられる音声信号、画像信号、圧力検出信号等に基づいて、特定の外部状態や、ユーザからの特定の働きかけ、ユーザからの指示等を認識し、その認識結果を表す状態認識情報を、モデル記憶部３２および行動決定機構部３３に通知する。
【００３６】
すなわち、センサ入力処理部３１は、音声認識部３１Ａを有しており、音声認識部３１Ａは、マイク１５から与えられる音声信号について音声認識を行う。そして、音声認識部３１Ａは、その音声認識結果としての、例えば、「歩け」、「伏せ」、「ボールを追いかけろ」等の指令その他を、状態認識情報として、モデル記憶部３２および行動決定機構部３３に通知する。
【００３７】
また、音声認識部３１Ａは、圧力処理部３１Ｃから入力される状態認識情報、および姿勢遷移機構部３４から入力されるロボットの姿勢遷移情報を基に、ロボットの状態を監視しながら、その音声認識処理を実行するようになされている。
【００３８】
また、センサ入力処理部３１は、画像認識部３１Ｂを有しており、画像認識部３１Ｂは、ＣＣＤカメラ１６から与えられる画像信号を用いて、画像認識処理を行う。そして、画像認識部３１Ｂは、その処理の結果、例えば、「赤い丸いもの」や、「地面に対して垂直なかつ所定高さ以上の平面」等を検出したときには、「ボールがある」や、「壁がある」等の画像認識結果を、状態認識情報として、モデル記憶部３２および行動決定機構部３３に通知する。
【００３９】
さらに、センサ入力処理部３１は、圧力処理部３１Ｃを有しており、圧力処理部３１Ｃは、タッチセンサ１７、および、センサ３Ａ1乃至センサ３Ｄ1から与えられる圧力検出信号を処理する。
【００４０】
圧力処理部３１Ｃは、その処理の結果、タッチセンサ１７から、所定の閾値以上で、かつ短時間の圧力を検出したときには、「たたかれた（しかられた）」と認識し、所定の閾値未満で、かつ長時間の圧力を検出したときには、「撫でられた（ほめられた）」と認識して、その認識結果を、状態認識情報として、モデル記憶部３２、行動決定機構部３３および音声認識部３１Ａに通知する。さらに、圧力処理部３１Ｃは、センサ３Ａ1乃至センサ３Ｄ1から入力される信号を基に、脚部ユニット３Ａ乃至３Ｄが、いずれも床などに接地していないことを検出したときには、ユーザによって抱き上げられていると認識して、その認識結果を、状態認識情報として、モデル記憶部３２、行動決定機構部３３および音声認識部３１Ａに通知する。
【００４１】
モデル記憶部３２は、ロボットの感情、本能、成長の状態を表現する感情モデル、本能モデル、成長モデルをそれぞれ記憶、管理している。
【００４２】
ここで、感情モデルは、例えば、「うれしさ」、「悲しさ」、「怒り」、「楽しさ」等の感情の状態（度合い）を、所定の範囲の値によってそれぞれ表し、センサ入力処理部３１からの状態認識情報や時間経過等に基づいて、その値を変化させる。本能モデルは、例えば、「食欲」、「睡眠欲」、「運動欲」等の本能による欲求の状態（度合い）を、所定の範囲の値によってそれぞれ表し、センサ入力処理部３１からの状態認識情報や時間経過等に基づいて、その値を変化させる。成長モデルは、例えば、「幼年期」、「青年期」、「熟年期」、「老年期」等の成長の状態（度合い）を、所定の範囲の値によってそれぞれ表し、センサ入力処理部３１からの状態認識情報や時間経過等に基づいて、その値を変化させる。
【００４３】
モデル記憶部３２は、上述のようにして感情モデル、本能モデル、成長モデルの値で表される感情、本能、成長の状態を、状態情報として、行動決定機構部３３に送出する。
【００４４】
なお、モデル記憶部３２には、センサ入力処理部３１から状態認識情報が供給される他、行動決定機構部３３から、ロボットの現在または過去の行動、具体的には、例えば、「長時間歩いた」などの行動の内容を示す行動情報が供給されるようになっており、同一の状態認識情報が与えられても、行動情報が示すロボットの行動に応じて、異なる状態情報を生成するようになっている。
【００４５】
すなわち、例えば、ロボットが、ユーザに挨拶をし、ユーザに頭を撫でられた場合には、ユーザに挨拶をしたという行動情報と、頭を撫でられたという状態認識情報とが、モデル記憶部３２に与えられ、この場合、モデル記憶部３２では、「うれしさ」を表す感情モデルの値が増加される。
【００４６】
一方、ロボットが、何らかの仕事を実行中に頭を撫でられた場合には、仕事を実行中であるという行動情報と、頭を撫でられたという状態認識情報とが、モデル記憶部３２に与えられ、この場合、モデル記憶部３２では、「うれしさ」を表す感情モデルの値は変化されない。
【００４７】
このように、モデル記憶部３２は、状態認識情報だけでなく、現在または過去のロボットの行動を示す行動情報も参照しながら、感情モデルの値を設定する。
これにより、例えば、何らかのタスクを実行中に、ユーザが、いたずらするつもりで頭を撫でたときに、「うれしさ」を表す感情モデルの値を増加させるような、不自然な感情の変化が生じることを回避することができる。
【００４８】
なお、モデル記憶部３２は、本能モデルおよび成長モデルについても、感情モデルにおける場合と同様に、状態認識情報および行動情報の両方に基づいて、その値を増減させるようになっている。また、モデル記憶部３２は、感情モデル、本能モデル、成長モデルそれぞれの値を、他のモデルの値にも基づいて増減させるようになっている。
【００４９】
行動決定機構部３３は、センサ入力処理部３１からの状態認識情報や、モデル記憶部３２からの状態情報、時間経過等に基づいて、次の行動を決定し、決定された行動の内容を、行動指令情報として、姿勢遷移機構部３４に送出する。
【００５０】
即ち、行動決定機構部３３は、ロボットがとり得る行動をステート（状態）（state）に対応させた有限オートマトンを、ロボットの行動を規定する行動モデルとして管理しており、この行動モデルとしての有限オートマトンにおけるステートを、センサ入力処理部３１からの状態認識情報や、モデル記憶部３２における感情モデル、本能モデル、または成長モデルの値、時間経過等に基づいて遷移させ、遷移後のステートに対応する行動を、次にとるべき行動として決定する。
【００５１】
ここで、行動決定機構部３３は、所定のトリガ（trigger）があったことを検出すると、ステートを遷移させる。すなわち、行動決定機構部３３は、例えば、現在のステートに対応する行動を実行している時間が所定時間に達したときや、特定の状態認識情報を受信したとき、モデル記憶部３２から供給される状態情報が示す感情や、本能、成長の状態の値が所定の閾値以下または以上になったとき等に、ステートを遷移させる。
【００５２】
なお、行動決定機構部３３は、上述したように、センサ入力処理部３１からの状態認識情報だけでなく、モデル記憶部３２における感情モデルや、本能モデル、成長モデルの値等にも基づいて、行動モデルにおけるステートを遷移させることから、同一の状態認識情報が入力されても、感情モデルや、本能モデル、成長モデルの値（状態情報）によっては、ステートの遷移先は異なるものとなる。
【００５３】
その結果、行動決定機構部３３は、例えば、状態情報が、「怒っていない」こと、および「お腹がすいていない」ことを表している場合において、状態認識情報が、「目の前に手のひらが差し出された」ことを表しているときには、目の前に手のひらが差し出されたことに応じて、「お手」という行動をとらせる行動指令情報を生成し、これを、姿勢遷移機構部３４に送出する。
【００５４】
また、行動決定機構部３３は、例えば、状態情報が、「怒っていない」こと、および「お腹がすいている」ことを表している場合において、状態認識情報が、「目の前に手のひらが差し出された」ことを表しているときには、目の前に手のひらが差し出されたことに応じて、「手のひらをぺろぺろなめる」ような行動を行わせるための行動指令情報を生成し、これを、姿勢遷移機構部３４に送出する。
【００５５】
また、行動決定機構部３３は、例えば、状態情報が、「怒っている」ことを表している場合において、状態認識情報が、「目の前に手のひらが差し出された」ことを表しているときには、状態情報が、「お腹がすいている」ことを表していても、また、「お腹がすいていない」ことを表していても、「ぷいと横を向く」ような行動を行わせるための行動指令情報を生成し、これを、姿勢遷移機構部３４に送出する。
【００５６】
なお、行動決定機構部３３には、モデル記憶部３２から供給される状態情報が示す感情や、本能、成長の状態に基づいて、遷移先のステートに対応する行動のパラメータとしての、例えば、歩行の速度や、手足を動かす際の動きの大きさおよび速度などを決定させることができ、この場合、それらのパラメータを含む行動指令情報が、姿勢遷移機構部３４に送出される。
【００５７】
また、行動決定機構部３３では、上述したように、ロボットの頭部や手足等を動作させる行動指令情報の他、ロボットに発話を行わせる行動指令情報も生成される。ロボットに発話を行わせる行動指令情報は、音声合成部３６に供給されるようになっており、音声合成部３６に供給される行動指令情報には、音声合成部３６に生成させる合成音に対応するテキスト等が含まれる。そして、音声合成部３６は、行動決定部３２から行動指令情報を受信すると、その行動指令情報に含まれるテキストに基づき、合成音を生成し、出力制御部３７を介して、スピーカ１８に供給して出力させる。これにより、スピーカ１８からは、例えば、ロボットの鳴き声、さらには、「お腹がすいた」等のユーザへの各種の要求、「何？」等のユーザの呼びかけに対する応答その他の音声出力が行われる。
【００５８】
姿勢遷移機構部３４は、行動決定機構部３３から供給される行動指令情報に基づいて、ロボットの姿勢を、現在の姿勢から次の姿勢に遷移させるための姿勢遷移情報を生成し、これを制御機構部３５および音声認識部３１Ａに送出する。
【００５９】
ここで、現在の姿勢から次に遷移可能な姿勢は、例えば、胴体や手や足の形状、重さ、各部の結合状態のようなロボットの物理的形状と、関節が曲がる方向や角度のようなアクチュエータ３ＡＡ1乃至５Ａ1および５Ａ2の機構とによって決定される。
【００６０】
また、次の姿勢としては、現在の姿勢から直接遷移可能な姿勢と、直接には遷移できない姿勢とがある。例えば、４本足のロボットは、手足を大きく投げ出して寝転んでいる状態から、伏せた状態へ直接遷移することはできるが、立った状態へ直接遷移することはできず、一旦、手足を胴体近くに引き寄せて伏せた姿勢になり、それから立ち上がるという２段階の動作が必要である。また、安全に実行できない姿勢も存在する。例えば、４本足のロボットは、その４本足で立っている姿勢から、両前足を挙げてバンザイをしようとすると、簡単に転倒してしまう。
【００６１】
このため、姿勢遷移機構部３４は、直接遷移可能な姿勢をあらかじめ登録しておき、行動決定機構部３３から供給される行動指令情報が、直接遷移可能な姿勢を示す場合には、その行動指令情報を、そのまま姿勢遷移情報として、制御機構部３５に送出する。一方、行動指令情報が、直接遷移不可能な姿勢を示す場合には、姿勢遷移機構部３４は、遷移可能な他の姿勢に一旦遷移した後に、目的の姿勢まで遷移させるような姿勢遷移情報を生成し、制御機構部３５に送出する。これによりロボットが、遷移不可能な姿勢を無理に実行しようとする事態や、転倒するような事態を回避することができるようになっている。
【００６２】
姿勢遷移情報は、音声認識部３１Ａにも出力される。ロボットが、その姿勢を遷移させる場合、アクチュエータ３ＡＡ1乃至アクチュエータ５Ａ2のうちの、いずれかのアクチュエータが動作する。そこで、姿勢遷移機構部３４は、音声認識部３１Ａが、これらのアクチュエータの動作音を、ユーザの音声と認識してしまわないように、姿勢遷移情報を、音声認識部３１Ａに出力する。
【００６３】
制御機構部３５は、姿勢遷移機構部３４からの姿勢遷移情報にしたがって、アクチュエータ３ＡＡ1乃至アクチュエータ５Ａ2を駆動するための制御信号を生成し、これを、アクチュエータ３ＡＡ1乃至アクチュエータ５Ａ2に送出する。これにより、アクチュエータ３ＡＡ1乃至アクチュエータ５Ａ2は、制御信号にしたがって駆動し、ロボットは、自律的に行動を起こす。
【００６４】
出力制御部３７には、音声合成部３６からの合成音のディジタルデータが供給されるようになっており、出力制御部３７は、それらのディジタルデータを、アナログの音声信号にＤ／Ａ変換し、スピーカ１８に供給して出力させる。
【００６５】
次に、図４は、図３の音声認識部３１Ａの構成例を示している。
【００６６】
マイク１５からの音声信号は、ＡＤ（Analog Digital）変換部４１に供給される。ＡＤ変換部４１では、マイク１５からのアナログ信号である音声信号がサンプリング、量子化され、ディジタル信号である音声データにＡＤ変換される。この音声データは、特徴抽出部４２および音声区間検出部４７に供給される。
【００６７】
特徴抽出部４２は、入力される音声データについて、適当なフレームごとに、状態認識情報、および姿勢遷移情報の入力を受け、ロボットの状態に対応させて、例えば、ＭＦＣＣ（Mel Frequency Cepstrum Coefficient）分析を行い、その分析結果を、特徴パラメータ（特徴ベクトル）として、マッチング部４３に出力する。なお、特徴抽出部４２では、その他、例えば、線形予測係数、ケプストラム係数、線スペクトル対、所定の周波数帯域ごとのパワー（フィルタバンクの出力）等を、特徴パラメータとして抽出することが可能である。
【００６８】
マッチング部４３は、特徴抽出部４２からの特徴パラメータを用いて、音響モデル記憶部４４、辞書記憶部４５、および文法記憶部４６を必要に応じて参照しながら、マイク１５に入力された音声（入力音声）を、例えば、連続分布ＨＭＭ（Hidden Markov Model）法に基づいて音声認識する。
【００６９】
即ち、音響モデル記憶部４４は、音声認識する音声の言語における個々の音素や音節などの音響的な特徴を表す音響モデルを記憶している。ここでは、連続分布ＨＭＭ法に基づいて音声認識を行うので、音響モデルとしては、ＨＭＭ（Hidden Markov Model）が用いられる。辞書記憶部４５は、認識対象の各単語について、その発音に関する情報（音韻情報）が記述された単語辞書を記憶している。文法記憶部４６は、辞書記憶部４５の単語辞書に登録されている各単語が、どのように連鎖する（つながる）かを記述した文法規則を記憶している。ここで、文法規則としては、例えば、文脈自由文法（ＣＦＧ）や、統計的な単語連鎖確率（Ｎ−ｇｒａｍ）などに基づく規則を用いることができる。
【００７０】
マッチング部４３は、辞書記憶部４５の単語辞書を参照することにより、音響モデル記憶部４４に記憶されている音響モデルを接続することで、単語の音響モデル（単語モデル）を構成する。さらに、マッチング部４３は、幾つかの単語モデルを、文法記憶部４６に記憶された文法規則を参照することにより接続し、そのようにして接続された単語モデルを用いて、特徴パラメータに基づき、連続分布ＨＭＭ法によって、マイク１５に入力された音声を認識する。即ち、マッチング部４３は、特徴抽出部４２が出力する時系列の特徴パラメータが観測されるスコア（尤度）が最も高い単語モデルの系列を検出し、その単語モデルの系列に対応する単語列の音韻情報（読み）を、音声の認識結果として出力する。
【００７１】
より具体的には、マッチング部４３は、接続された単語モデルに対応する単語列について、各特徴パラメータの出現確率を累積し、その累積値をスコアとして、そのスコアを最も高くする単語列の音韻情報を、音声認識結果として出力する。
【００７２】
以上のようにして出力される、マイク１５に入力された音声の認識結果は、状態認識情報として、モデル記憶部３２および行動決定機構部３３に出力される。
【００７３】
なお、音声区間検出部４７は、ＡＤ変換部４１からの音声データについて、特徴抽出部４２がＭＦＣＣ分析を行うのと同様のフレームごとに、音声入力レベル（パワー）を算出している。さらに、音声区間検出部４７は、状態認識情報、および姿勢遷移情報の入力を受け、各フレームの音声入力レベルを所定の閾値と比較することにより、ユーザの音声が入力されている音声区間を検出する。すなわち、音声区間とは、ノイズ源となる所定の動作（例えば、頭部ユニット４を動かす）が行われていない区間であり、かつ、所定の閾値以上の音声入力レベルを有するフレームで構成される区間を示す。そして、音声区間検出部４７は、検出した音声区間を、特徴抽出部４２とマッチング部４３に供給しており、特徴抽出部４２とマッチング部４３は、音声区間のみを対象に処理を行う。
【００７４】
次に、図５および図６のフローチャートを参照して、音声認識処理について説明する。
【００７５】
ステップＳ１において、音声区間検出部４７は、ＡＤ変換部４１を介して入力された音声データを基に、環境音レベルを推定する。
【００７６】
マイク１５には、ユーザがロボットに対して発話していない場合においても、様々なノイズが音声入力されるが、そのノイズをユーザの発話として音声認識することは誤動作の原因になる。従って、ユーザの発話を音声認識していない状態（音声認識ＯＦＦ状態）において、環境音レベルを推定する必要がある。
【００７７】
図７に示されるように、マイク１５およびＡＤ変換部４１を介して入力される音声データの音声入力レベルは、音声認識ＯＦＦ状態においても一定ではない。そこで、環境音レベルをＥＮＶ、現在の音声入力レベルをＰとして、次の式（１）および式（２）により、所定の短い時間毎に、環境音レベルを算出する。
ＥＮＶ＝ａ×ＥＮＶ＋ｂ×Ｐ    ・・・（１）
ａ＋ｂ＝１．０                ・・・（２）
【００７８】
ここで、ａは、０．９など、１に比較的近い数字に設定され、ｂは、０．１などに設定されることにより、瞬間的にパワーの大きなノイズ（例えば、ドアがばたんと閉まる音など）が、環境音全体に大きな影響を与えないようになされている。
【００７９】
環境音レベルの推定は、予め決められた閾値Ｔ１を基に、音声入力レベルが、ＥＮＶ＋Ｔ１を越えるまで（後述するステップＳ８、もしくはステップＳ１３において、音声入力レベルがＥＮＶ＋Ｔ１を越えたと判断されるまで）継続される。
【００８０】
ステップＳ２において、音声区間検出部４７は、姿勢遷移機構部３４、もしくは、圧力処理部３１−Ｃから、姿勢遷移情報もしくは状態認識情報の入力を受けたか否かを判断する。ステップＳ２において、姿勢遷移情報もしくは状態認識情報の入力を受けていないと判断された場合、処理は、ステップＳ８に進む。
【００８１】
ステップＳ２において、姿勢遷移情報もしくは状態認識情報の入力を受けたと判断された場合、ステップＳ３において、音声区間検出部４７は、入力された情報に基づいて、動作を行うアクチュエータは、マイク１５に近いか否かを判断する。ステップＳ３において、動作を行うアクチュエータは、マイク１５に近くないと判断された場合、処理は、ステップＳ６に進む。
【００８２】
ステップＳ３において、動作を行うアクチュエータは、マイク１５に近いと判断された場合、ステップＳ４において、音声区間検出部４７は、音声認識処理をキャンセルする。すなわち、マイク１５に近いアクチュエータの動作中は、音声区間としないようにする。
【００８３】
図１および図２を用いて説明したロボットにおいては、マイク１５が頭部ユニット４に設けられている。すなわち、頭部ユニット４に設けられているアクチュエータ４Ａ1乃至４ＡL（例えば、頭部ユニット４と胴体部ユニット２の連結部分、あるいは下顎部４Ａ）の動作に伴って発生するノイズの音声入力パワーは、比較的大きいものであるため、動作中の音声認識結果の信頼性は著しく低いものとなる。従って、マイク１５に近いアクチュエータの動作中は、音声区間としないことにより、誤動作を防ぐことが可能となる。
【００８４】
ステップＳ５において、音声区間検出部４７は、入力された情報に基づいて、動作が終了されたか否かを判断する。ステップＳ５において、動作が終了されていないと判断された場合、処理は、ステップＳ４に戻り、それ以降の処理が繰り返される。ステップＳ５において、動作が終了されたと判断された場合、処理は、ステップＳ１に戻り、それ以降の処理が繰り返される。
【００８５】
ステップＳ３において、動作を行うアクチュエータは、マイク１５に近くないと判断された場合、ステップＳ６において、音声区間検出部４７は、入力された情報に基づいて、姿勢遷移情報は、歩行動作の開始を示しているか否かを判断する。ステップＳ６において、歩行動作の開始を示していると判断された場合、処理は、ステップＳ１３に進む。
【００８６】
ステップＳ６において、姿勢遷移情報は、歩行動作の開始を示していないと判断された場合、ロボットは、マイク１５付近のアクチュエータは動作せず、かつ、歩行動作以外の動作が行われている、もしくは、ユーザに抱き上げられていたり、撫でられているという状態である。ステップＳ７において、音声区間検出部４７は、環境音（ノイズ）ではない、ユーザの発話などが音声入力されていることを判断するための閾値Ｔ１（図７）を、姿勢遷移情報、もしくは、状態認識情報に応じた値に変更する。
【００８７】
例えば、圧力処理部３１Ｃから入力される状態認識情報が、ロボットがユーザに抱き上げられていることを示している場合、マイク１５から入力される音声データには、ユーザがロボットの筐体表面に触れているために生じるタッチノイズやこすれ音が含まれる。また、状態遷移機構部３４から入力される姿勢遷移情報が、マイク１５に比較的遠い位置に設けられているアクチュエータ（例えば、尻尾部ユニット５のアクチュエータ５Ａ1など）が動作していることを示している場合、マイク１５から入力される音声データには、それらのアクチュエータの動作音が含まれる。音声データに含まれる動作音は、そのアクチュエータの種類、およびマイク１５との距離によって異なる。
【００８８】
音声区間検出部４７は、例えば、ロボットがユーザに抱き上げられている場合の閾値Ｔ１ａ、脚部ユニット３Ａもしくは３Ｂが動作している場合の閾値Ｔ１ｂ、脚部ユニット３Ｃもしくは３Ｄが動作している場合の閾値Ｔ１ｃ、あるいは、尻尾部ユニット５が動作している場合の閾値Ｔ１ｄを予め用意しておき、入力された姿勢遷移情報、もしくは、状態認識情報に応じて、適切な閾値を利用した音声区間の検出を行うように設定する。
【００８９】
ステップＳ２において、姿勢遷移情報もしくは状態認識情報の入力を受けていないと判断された場合、もしくは、ステップＳ７の処理の終了後、ステップＳ８において、音声区間検出部４７は、音声入力レベルが、閾値（Ｔ１＋ＥＮＶ）を越えたか否かを判断する。ステップＳ８において、音声入力レベルが、閾値（Ｔ１＋ＥＮＶ）を越えていないと判断された場合、処理は、ステップＳ１に戻り、それ以降の処理が繰り返される。
【００９０】
ステップＳ８において、音声入力レベルが、閾値（Ｔ１＋ＥＮＶ）を越えていると判断された場合、ステップＳ９において、音声区間検出部４７は、環境音レベルの推定を止め、その内部に有する図示しないカウンタ（タイマ）を用いて、音声認識開始カウントを開始する。
【００９１】
ステップＳ１０において、音声区間検出部４７は、音声認識開始カウントが所定の値（例えば、図７のＣＮＴ＿ＯＮで示される値）を超えたか否かを判断する。ステップＳ１０において、音声認識開始カウントが所定の値を超えていないと判断された場合、音声認識開始カウントが所定の値を超えたと判断されるまで、ステップＳ１０の処理が繰り返される。
【００９２】
ステップＳ１０において、音声認識開始カウントが所定の値を超えたと判断された場合、ステップＳ１１において、音声区間検出部４７は、音声区間の開始を特徴抽出部４２およびマッチング部４３に出力する。特徴抽出部４２およびマッチング部４３は、図４を用いて説明した音声認識処理を実行する。
【００９３】
ステップＳ１２において、音声区間検出部４７は、音声入力レベルが、閾値（Ｔ２＋ＥＮＶ）以下になったか否かを判断する。
【００９４】
マイク１５には、ユーザがロボットに対する発話を終了した後も、様々なノイズが音声入力されるが、そのノイズをユーザの発話として音声認識することは誤動作の原因になる。従って、音声入力レベルが、一定の値を下回った場合、音声認識処理を行わないように（音声認識ＯＦＦ状態に）する必要がある。
【００９５】
図８に示されるように、マイク１５およびＡＤ変換部４１を介して入力される音声データの音声入力レベルが、所定の閾値Ｔ２と、音声認識処理が開始された時点においての環境音レベルＥＮＶとの和（Ｔ２＋ＥＮＶ）を下回るか否かを判断することにより、音声区間検出部４７は、ユーザの発話が終了したか否かを判断することができる。
【００９６】
ステップＳ１２において、音声入力レベルが、閾値（Ｔ２＋ＥＮＶ）以下になっていないと判断された場合、処理は、ステップＳ１１に戻り、それ以降の処理が繰り返される。ステップＳ１２において、音声入力レベルが、閾値（Ｔ２＋ＥＮＶ）以下になったと判断された場合、処理は、ステップＳ１８に進む。
【００９７】
ステップＳ６において、姿勢遷移情報は歩行動作の開始を示していると判断された場合、ステップＳ１３において、音声区間検出部４７は、音声入力レベルが、閾値（Ｔ１＋ＥＮＶ）を越えたか否かを判断する。ステップＳ１３において、音声入力レベルが、閾値（Ｔ１＋ＥＮＶ）を越えていないと判断された場合、処理は、ステップＳ１に戻り、それ以降の処理が繰り返される。
【００９８】
ステップＳ１３において、音声入力レベルが、閾値（Ｔ１＋ＥＮＶ）を越えていると判断された場合、ステップＳ１４において、音声区間検出部４７は、環境音レベルの推定を止め、その内部に有する図示しないカウンタ（タイマ）を用いて、音声認識開始カウントを開始する。
【００９９】
ステップＳ１５において、音声区間検出部４７は、音声認識開始カウントが所定の値（例えば、図７のＣＮＴ＿ＯＮで示される値）を超えたか否かを判断する。ステップＳ１５において、音声認識開始カウントが所定の値を超えていないと判断された場合、音声認識開始カウントが所定の値を超えたと判断されるまで、ステップＳ１５の処理が繰り返される。
【０１００】
ステップＳ１５において、音声認識開始カウントが所定の値を超えたと判断された場合、ステップＳ１６において、音声区間検出部４７は、音声区間の開始を特徴抽出部４２およびマッチング部４３に出力する。特徴抽出部４２およびマッチング部４３は、歩行動作専用の音声認識処理を実行する。
【０１０１】
図９に示されるように、ロボットの歩行動作中は、ユーザの発話に加えて、脚部ユニット３Ａ乃至３Ｄが、例えば床などに接地する際の接地ノイズが、入力される音声データに含まれてしまう。姿勢遷移情報として、歩行動作中であることを通知された特徴抽出部４２は、この接地ノイズを音声データから取り除くために、例えば、音声入力レベルの増減（ΔＰ）を監視し、ΔＰの大きさを基にパルス性のノイズを検出する（パルス性の音声データは、図９に示されるように、その音声レベルが急激に上昇し、ピーク後、急激に減少するという特徴を有する）。そして、特徴抽出部４２は、そのフレームに関して、特徴抽出処理を行わないようにする。接地ノイズは、非常に短い時間において発生するため、接地ノイズであると検出されたフレームを、音声認識処理から外したとしても、ユーザの発話の認識には支障がない。
【０１０２】
また、特徴抽出部４２に、歩行動作時の接地ノイズの標準的な音声成分を予め記憶させておき、歩行動作時は、その音声成分を用いて、入力された音声データをフィルタリングさせて、接地ノイズを除去した後の音声データを用いて、特徴抽出処理を行わせるようにしても良い。
【０１０３】
ステップＳ１７において、音声区間検出部４７は、ステップＳ１２と同様の処理により、音声入力レベルが、閾値（Ｔ２＋ＥＮＶ）以下になったか否かを判断する。ステップＳ１７において、音声入力レベルが、閾値（Ｔ２＋ＥＮＶ）以下になっていないと判断された場合、処理は、ステップＳ１６に戻り、それ以降の処理が繰り返される。
【０１０４】
ステップＳ１２において、音声入力レベルが、閾値（Ｔ２＋ＥＮＶ）以下になったと判断された場合、もしくは、ステップＳ１７において、音声入力レベルが、閾値（Ｔ２＋ＥＮＶ）以下になったと判断された場合、ステップＳ１８において、音声区間検出部４７は、その内部に有する図示しないカウンタ（タイマ）を用いて、音声認識終了カウントを開始する。
【０１０５】
ステップＳ１９において、音声区間検出部４７は、音声認識終了カウントが所定の値（例えば、図８のＣＮＴ＿ＯＦＦで示される値）を超えたか否かを判断する。ステップＳ１９において、音声認識終了カウントが所定の値を超えていないと判断された場合、音声認識終了カウントが所定の値を超えたと判断されるまで、ステップＳ１９の処理が繰り返される。
【０１０６】
ステップＳ１９において、音声認識終了カウントが所定の値を超えたと判断された場合、ステップＳ２０において、音声区間検出部４７は、音声区間が終了したことを示す信号を、特徴抽出部４２およびマッチング部４３に出力する。特徴抽出部４２およびマッチング部４３は、音声認識処理を終了し、処理は、ステップＳ１に戻り、それ以降の処理が繰り返される。
【０１０７】
なお、図５のステップＳ７においては、音声区間検出部４７が、環境音（ノイズ）ではない、ユーザの発話などが音声入力されていることを判断するための閾値Ｔ１を、姿勢遷移情報、もしくは、状態認識情報に応じた値に変更するものとして説明したが、音声区分の検出のための閾値として、環境音レベルに左右されない閾値Ｔ３を用いるようにしても良い。すなわち、ステップＳ８においては、音声入力レベルが、閾値（Ｔ１＋ＥＮＶ）を越えたか否かが判断されるのではなく、環境音レベルＥＮＶに関わらない閾値Ｔ３を超えたか否かが判断される。
【０１０８】
また、閾値Ｔ３は、姿勢遷移情報、もしくは、状態認識情報に応じて、予め用意されるようにしても良いし、動作開始、もしくは状態変更時に、所定の学習区間を設けて、平均的なノイズ成分を取得することによって、その都度、設定されるようにしても良い。
【０１０９】
以上、本発明を、エンターテイメント用のロボット（疑似ペットとしてのロボット）に適用した場合について説明したが、本発明は、これに限らず、例えば、産業用のロボット等の各種のロボットに広く適用することが可能である。また、本発明は、現実世界のロボットだけでなく、例えば、液晶ディスプレイ等の表示装置に表示される仮想的なロボットにも適用可能である。
【０１１０】
さらに、本実施の形態においては、上述した一連の処理を、ＣＰＵ１０Ａ（図２）にプログラムを実行させることにより行うようにしたが、一連の処理は、それ専用のハードウェアによって行うことも可能である。
【０１１１】
なお、プログラムは、あらかじめメモリ１０Ｂ（図２）に記憶させておく他、フロッピーディスク、CD-ROM（Compact Disc Read Only Memory），MO（Magneto optical）ディスク，DVD（Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。そして、このようなリムーバブル記録媒体を、いわゆるパッケージソフトウエアとして提供し、ロボット（メモリ１０Ｂ）にインストールするようにすることができる。
【０１１２】
また、プログラムは、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、無線で転送したり、LAN（Local Area Network）、インターネットといったネットワークを介して、有線で転送し、メモリ１０Ｂにインストールすることができる。
【０１１３】
この場合、プログラムがバージョンアップされたとき等に、そのバージョンアップされたプログラムを、メモリ１０Ｂに、容易にインストールすることができる。
【０１１４】
ここで、本明細書において、ＣＰＵ１０Ａに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。
【０１１５】
また、プログラムは、唯１つのＣＰＵにより処理されるものであっても良いし、複数のＣＰＵによって分散処理されるものであっても良い。
【０１１６】
【発明の効果】
本発明のロボット制御装置、ロボット制御方法、および記録媒体に記録されているプログラムによれば、ロボットの状態や行動に基づいた音声認識を行うことにより、ユーザの発話した音声と、ロボットの動作などにより発生するノイズとを区別して、誤認識を防ぐようにすることができる。
【図面の簡単な説明】
【図１】本発明を適用したロボットの一実施の形態の外観構成例を示す斜視図である。
【図２】ロボットの内部構成例を示すブロック図である。
【図３】コントローラの機能的構成例を示すブロック図である。
【図４】音声認識部の構成例を示すブロック図である。
【図５】音声認識処理を説明するためのフローチャートである。
【図６】音声認識処理を説明するためのフローチャートである。
【図７】音声認識区間の開始について説明するための図である。
【図８】音声認識区間の終了について説明するための図である。
【図９】歩行動作中の脚部ユニットの接地ノイズについて説明するための図である。
【符号の説明】
４  頭部ユニット，  ４Ａ  下顎部，  １０  コントローラ，  １０Ａ  ＣＰＵ，  １０Ｂ  メモリ，  １５  マイク，  １６  ＣＣＤカメラ，  １７  タッチセンサ，  １８  スピーカ，  ３１  センサ入力処理部，  ３１Ａ  音声認識部，  ３１Ｂ  画像認識部，  ３１Ｃ  圧力処理部，  ３２  モデル記憶部，  ３３  行動決定機構部，  ３４  姿勢遷移機構部，  ３５  制御機構部，  ３６音声合成部，  ３７  出力制御部，  ４１  ＡＤ変換部，  ４２  特徴抽出部，  ４３  マッチング部，  ４４  音響モデル記憶部，  ４５  辞書記憶部，  ４６  文法記憶部，  ４７  音声区間検出部
【図１】
0004587009.tif 000002
【図２】
0004587009.tif 000003
【図３】
0004587009.tif 000004
【図４】
0004587009.tif 000005
【図５】
0004587009.tif 000006
【図６】
0004587009.tif 000007
【図７】
0004587009.tif 000008
【図８】
0004587009.tif 000009
【図９】
0004587009.tif 000010