(57)【特許請求の範囲】
【請求項１】
音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムであって、
物品の名称および当該物品に関連する複数の単語を記憶する記憶手段、
前記特定した物品に関連する複数の単語を前記記憶手段から読み出し、読み出した単語について第１べき集合を作成する第１作成手段、
前記特定した物品から第１所定距離以内に存在する他の物品に関する複数の単語を前記記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成する第２作成手段、
前記第１作成手段によって作成された第１べき集合と、前記第２作成手段によって作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除する削除手段、
前記削除手段によって削除した結果、前記第１べき集合に含まれる要素のうち、単語数が最小である要素を選択する第１選択手段、
前記第１選択手段によって選択された要素のうち、前記他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択する第２選択手段、および
前記第２選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する発話内容生成手段を備える、コミュニケーションシステム。
【請求項２】
前記第１選択手段によって選択された要素に含まれる第１単語の文字列と、前記他の物品に関連する複数の第２単語の文字列のそれぞれとのレーベンシュタイン距離を算出する算出手段をさらに備え、
前記第２選択手段は、前記算出手段によって算出されたレーベンシュタイン距離が最大となる第１単語を含む要素を選択する、請求項１記載のコミュニケーションシステム。
【請求項３】
前記特定した物品から第１所定距離以内に前記他の物品が存在するかどうかを判断する第１判断手段、
前記第１判断手段によって前記特定した物品から第１所定距離以内に前記他の物品が存在しないと判断されたとき、当該特定した物品に関連する複数の単語のそれぞれを発話内容に含める候補として決定する候補決定手段、および
前記候補決定手段によって決定された単語のうち、前記人間から第２所定距離以内に存在する他の物品に関連する複数の単語の文字列との非類似度が最も高い単語を選択する第３選択手段をさらに備え、
前記発話内容生成手段は、前記第３選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する、請求項１または２記載のコミュニケーションシステム。
【請求項４】
前記第１判断手段によって前記特定した物品から第１所定距離以内に前記他の物品が存在しないと判断されたとき、前記人間から第２所定距離以内に他の物品が存在するかどうかを判断する第２判断手段、および
前記第２判断手段によって前記人間から第２所定距離以内に他の物品が存在しないことが判断されたとき、前記候補決定手段によって決定された候補のうちから１つの単語を所定のルールに従って選択する第４選択手段をさらに備え、
前記発話内容生成手段は、前記第４選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する、請求項３記載のコミュニケーションシステム。
【請求項５】
音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムに用いられ、音声にて確認する場合の発話内容を生成する発話内容生成装置であって、
物品の名称および当該物品に関連する複数の単語を記憶する記憶手段、
前記特定した物品に関連する複数の単語を前記記憶手段から読み出し、読み出した単語について第１べき集合を作成する第１作成手段、
前記特定した物品から所定距離以内に存在する他の物品に関する複数の単語を前記記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成する第２作成手段、
前記第１作成手段によって作成された第１べき集合と、前記第２作成手段によって作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除する削除手段、
前記削除手段によって削除した結果、前記第１べき集合に含まれる要素のうち、単語数が最小である要素を選択する第１選択手段、
前記第１選択手段によって選択された要素のうち、前記他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択する第２選択手段、および
前記第２選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する発話内容生成手段を備える、発話内容生成装置。
【請求項６】
音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムに用いられ、物品の名称および当該物品に関連する複数の単語を記憶する記憶手段を備え、音声にて確認する場合の発話内容を生成する発話内容生成装置の発話内容生成プログラムであって、
前記発話内容生成装置のプロセッサに、
前記特定した物品に関連する複数の単語を前記記憶手段から読み出し、読み出した単語について第１べき集合を作成する第１作成ステップ、
前記特定した物品から所定距離以内に存在する他の物品に関する複数の単語を前記記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成する第２作成ステップ、
前記第１作成ステップにおいて作成された第１べき集合と、前記第２作成ステップにおいて作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除する削除ステップ、
前記削除ステップにおいて削除した結果、前記第１べき集合に含まれる要素のうち、単語数が最小である要素を選択する第１選択ステップ、
前記第１選択ステップにおいて選択された要素のうち、前記他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択する第２選択ステップ、および
前記第２選択ステップにおいて選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する発話内容生成ステップを実行させる、発話内容生成プログラム。
【請求項７】
音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムに用いられ、物品の名称および当該物品に関連する複数の単語を記憶する記憶手段を備え、音声にて確認する場合の発話内容を生成する発話内容生成装置の発話内容生成方法であって、
前記発話内容生成装置のプロセッサは、
（ａ）前記特定した物品に関連する複数の単語を前記記憶手段から読み出し、読み出した単語について第１べき集合を作成し、
（ｂ）前記特定した物品から所定距離以内に存在する他の物品に関する複数の単語を前記記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成し、
（ｃ）前記ステップ（ａ）において作成された第１べき集合と、前記ステップ（ｂ）において作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除し、
（ｄ）前記ステップ（ｃ）において削除した結果、前記第１べき集合に含まれる要素の
うち、単語数が最小である要素を選択し、
（ｅ）前記ステップ（ｄ）において選択された要素のうち、前記他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択し、そして
（ｆ）前記ステップ（ｅ）において選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する、発話内容生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はコミュニケーションシステム、発話内容生成装置、発話内容生成プログラムおよび発話内容生成方法に関し、特にたとえば、音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかどうかを少なくとも音声によって確認する、コミュニケーションシステム、発話内容生成装置、発話内容生成プログラムおよび発話内容生成方法に関する。
【背景技術】
【０００２】
この種の従来のコミュニケーションシステムの一例が特許文献１に開示されている。この特許文献１に開示されるコミュニケーションシステムでは、サーバが人間の指示した物品を特定すると、当該物品を特定する「特定単語」を用いて、当該物品が人間の指示した物品であるか否かを確認する音声をロボットが発する。このとき、「特定単語」として、人間の近傍に存在する他の物品を特定するのに使用されない単語であり、音声認識による認識率の高い単語が選択される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２２３１７１号［G10L 15/22, G10L 15/00］
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１のコミュニケーションシステムでは、特定単語として用いる単語について、予め音声認識の認識率を求めておく必要があり、面倒である。
【０００５】
それゆえに、この発明の主たる目的は、新規な、コミュニケーションシステム、発話内容生成装置、発話内容生成プログラムおよび発話内容生成方法を提供することである。
【０００６】
また、この発明の他の目的は、発話内容に含める単語を簡単に選択できる、コミュニケーションシステム、発話内容生成装置、発話内容生成プログラムおよび発話内容生成方法を提供することである。
【課題を解決するための手段】
【０００７】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施の形態との対応関係を示したものであって、本発明を何ら限定するものではない。
【０００８】
第１の発明は、音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムであって、物品の名称および当該物品に関連する複数の単語を記憶する記憶手段、特定した物品に関連する複数の単語を記憶手段から読み出し、読み出した単語について第１べき集合を作成する第１作成手段、特定した物品から第１所定距離以内に存在する他の物品に関する複数の単語を記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成する第２作成手段、第１作成手段によって作成された第１べき集合と、第２作成手段によって作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除する削除手段、削除手段によって削除した結果、第１べき集合に含まれる要素のうち、単語数が最小である要素を選択する第１選択手段、第１選択手段によって選択された要素のうち、他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択する第２選択手段、および第２選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する発話内容生成手段を備える、コミュニケーションシステムである。
【０００９】
第１の発明では、コミュニケーションシステム（１０）は、音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認する。記憶手段（１２２、２０４）は、物品の名称および当該物品に関連する複数の単語を記憶する。物品に関連する複数の単語は、たとえば、物品の種類、色、厚みのような属性についての単語であり、物品を補足的に説明する単語である。第１作成手段（２００、Ｓ３３）は、特定した物品に関連する複数の単語を記憶手段から読み出し、読み出した単語について第１べき集合を作成する。第２作成手段（２００、Ｓ３５）は、特定した物品から第１所定距離以内に存在する他の物品に関する複数の単語を記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成する。第削除手段（２００、Ｓ３７）は、１作成手段によって作成された第１べき集合と、第２作成手段によって作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除する。第１選択手段（２００、Ｓ３９）は、削除手段によって削除した結果、第１べき集合に含まれる要素のうち、単語数が最小である要素を選択する。第２選択手段（２００、Ｓ４１）は、第１選択手段によって選択された要素のうち、他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択する。発話内容生成手段（２００、Ｓ１３）は、第２選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する。
【００１０】
第１の発明によれば、特定した物品から第１所定距離以内に存在する物品とは異なり、文字列の非類似度が最も高い文字列を選択するので、予め単語の音声認識率を求める必要がなく、発話内容に含める単語を簡単に選択することができる。したがって、発話内容を簡単に生成することができる。
【００１１】
第２の発明は、第１の発明に従属し、第１選択手段によって選択された要素に含まれる第１単語の文字列と、他の物品に関連する複数の第２単語の文字列のそれぞれとのレーベンシュタイン距離を算出する算出手段をさらに備え、第２選択手段は、算出手段によって算出されたレーベンシュタイン距離が最大となる第１単語を含む要素を選択する。
【００１２】
第２の発明では、コミュニケーションシステムは、算出手段（２００、Ｓ９１）をさらに備える。算出手段は、第１選択手段によって選択された要素に含まれる第１単語の文字列と、他の物品に関連する複数の第２単語の文字列のそれぞれとのレーベンシュタイン距離を算出する。つまり、文字列（発音）の類似度が算出される。第２選択手段は、算出手段によって算出されたレーベンシュタイン距離が最大となる第１単語を含む要素を選択する。したがって、上述したように、他の物品に関連する複数の単語の文字列との非類似度が最も高い要素が選択される。
【００１３】
第２の発明によれば、文字列同士のレーベンシュタイン距離を算出するだけなので、単語の選択が容易である。
【００１４】
第３の発明は、第１または第２の発明に従属し、特定した物品から第１所定距離以内に他の物品が存在するかどうかを判断する第１判断手段、第１判断手段によって特定した物品から第１所定距離以内に他の物品が存在しないと判断されたとき、当該特定した物品に関連する複数の単語のそれぞれを発話内容に含める候補として決定する候補決定手段、および候補決定手段によって決定された単語のうち、人間から第２所定距離以内に存在する他の物品に関連する複数の単語の文字列との非類似度が最も高い単語を選択する第３選択手段をさらに備え、発話内容生成手段は、第３選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する。
【００１５】
第３の発明では、コミュニケーションシステムは、第１判断手段（２００、Ｓ３１）、候補決定手段（２００、Ｓ４３）、および第３選択手段（２００、Ｓ５１）をさらに備える。第１判断手段は、特定した物品から第１所定距離以内に他の物品が存在するかどうかを判断する。候補決定手段は、第１判断手段によって特定した物品から第１所定距離以内に他の物品が存在しないと判断されたとき、当該特定した物品に関連する複数の単語のそれぞれを発話内容に含める候補として決定する。第３選択手段は、候補決定手段によって決定された単語のうち、人間から第２所定距離以内に存在する他の物品に関連する複数の単語の文字列との非類似度が最も高い単語を選択する。かかる場合には、発話内容生成手段は、第３選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する。
【００１６】
第３の発明によれば、特定した物品から第１所定距離以内に他の物品が存在しない場合であっても、発話内容に含む適切な単語を選択することができる。
【００１７】
第４の発明は、第３の発明に従属し、第１判断手段によって特定した物品から第１所定距離以内に他の物品が存在しないと判断されたとき、人間から第２所定距離以内に他の物品が存在するかどうかを判断する第２判断手段、および第２判断手段によって人間から第２所定距離以内に他の物品が存在しないことが判断されたとき、候補決定手段によって決定された候補のうちから１つの単語を所定のルールに従って選択する第４選択手段をさらに備え、発話内容生成手段は、第４選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する。
【００１８】
第４の発明では、コミュニケーションシステムは、第２判断手段（２００、Ｓ４５）および第４選択手段（２００、Ｓ５３）をさらに備える。第２判断手段は、第１判断手段によって特定した物品から第１所定距離以内に他の物品が存在しないと判断されたとき、人間から第２所定距離以内に他の物品が存在するかどうかを判断する。第４選択手段は、第２判断手段によって人間から第２所定距離以内に他の物品が存在しないことが判断されたとき、候補決定手段によって決定された候補のうちから１つの単語を所定のルールに従って選択する。たとえば、候補から、ランダムに１つの単語が選択されたり、システムの管理者等よって予め決定された１つの関連する単語が選択されたりする。かかる場合には、発話内容生成手段は、第４選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する。
【００１９】
第４の発明においても、第３の発明と同様に、特定した物品から第１所定距離以内に他の物品が存在しない場合であっても、発話内容に含む適切な単語を選択することができる。
【００２０】
第５の発明は、音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムに用いられ、音声にて確認する場合の発話内容を生成する発話内容生成装置であって、物品の名称および当該物品に関連する複数の単語を記憶する記憶手段、特定した物品に関連する複数の単語を記憶手段から読み出し、読み出した単語について第１べき集合を作成する第１作成手段、特定した物品から所定距離以内に存在する他の物品に関する複数の単語を記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成する第２作成手段、第１作成手段によって作成された第１べき集合と、第２作成手段によって作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除する削除手段、削除手段によって削除した結果、第１べき集合に含まれる要素のうち、単語数が最小である要素を選択する第１選択手段、第１選択手段によって選択された要素のうち、他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択する第２選択手段、および第２選択手段によって選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する発話内容生成手段を備える、発話内容生成装置である。
【００２１】
第６の発明は、音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムに用いられ、物品の名称および当該物品に関連する複数の単語を記憶する記憶手段を備え、音声にて確認する場合の発話内容を生成する発話内容生成装置の発話内容生成プログラムであって、発話内容生成装置のプロセッサに、特定した物品に関連する複数の単語を記憶手段から読み出し、読み出した単語について第１べき集合を作成する第１作成ステップ、特定した物品から所定距離以内に存在する他の物品に関する複数の単語を記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成する第２作成ステップ、第１作成ステップにおいて作成された第１べき集合と、第２作成ステップにおいて作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除する削除ステップ、削除ステップにおいて削除した結果、第１べき集合に含まれる要素のうち、単語数が最小である要素を選択する第１選択ステップ、第１選択ステップにおいて選択された要素のうち、他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択する第２選択ステップ、および第２選択ステップにおいて選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する発話内容生成ステップを実行させる、発話内容生成プログラムである。
【００２２】
第７の発明は、音声認識によって人間が指示する物品を特定し、当該特定した物品が当該人間の指示したものであるかを音声にて確認するコミュニケーションシステムに用いられ、物品の名称および当該物品に関連する複数の単語を記憶する記憶手段を備え、音声にて確認する場合の発話内容を生成する発話内容生成装置の発話内容生成方法であって、発話内容生成装置のプロセッサは、（ａ）特定した物品に関連する複数の単語を記憶手段から読み出し、読み出した単語について第１べき集合を作成し、（ｂ）特定した物品から所定距離以内に存在する他の物品に関する複数の単語を記憶手段から読み出し、読み出した単語についての第２べき集合を、当該他の物品毎に作成し、（ｃ）ステップ（ａ）において作成された第１べき集合と、ステップ（ｂ）において作成された第２べき集合のそれぞれとの間で共通する要素を、当該第１べき集合から削除し、（ｄ）ステップ（ｃ）において削除した結果、第１べき集合に含まれる要素のうち、単語数が最小である要素を選択し、（ｅ）ステップ（ｄ）において選択された要素のうち、他の物品に関連する複数の単語の文字列との非類似度が最も高い要素を選択し、そして（ｆ）ステップ（ｅ）において選択された要素に含まれる単語を含めて、音声にて確認する際の発話内容を生成する、発話内容生成方法である。
【００２３】
第５−第７の発明においても、第１の発明と同様に、発話内容を簡単に生成することができる。
【発明の効果】
【００２４】
この発明によれば、特定した物品から所定距離以内に存在する物品とは異なり、文字列の非類似度が最も高い文字列を選択するので、予め単語の音声認識率を求める必要がなく、発話内容に含める単語を簡単に選択することができる。したがって、発話内容を簡単に生成することができる。
【００２５】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００２６】
【図１】図１はこの発明の一実施例を示すコミュニケーションシステムの概要を示す図解図である。
【図２】図２は図１に示すロボットの外観を正面から見た図解図である。
【図３】図３は図１に示すロボットの電気的な構成を示すブロック図である。
【図４】図４は図１に示すサーバの電気的な構成を示すブロック図である。
【図５】図５は図１の実施例で用いられる物品辞書の一例を示す図解図である。
【図６】図６は図１の実施例で用いられる物品ローカル辞書の一例を示す図解図である。
【図７】図７は図１の実施例で用いられる単語の一覧の一例を示す図解図である。
【図８】図８は図１の実施例の確認行動で用いられる単語を決定する方法を説明するための図解図である。
【図９】図９は図４に示すＲＡＭのメモリマップの一例を示す図解図である。
【図１０】図１０は図４に示すＣＰＵの確認行動決定処理を示すフロー図である。
【図１１】図１１は図４に示すＣＰＵの単語選択処理を示すフロー図である。
【図１２】図１２は図４に示すＣＰＵの物品Ｘの属性組を生成する処理を示すフロー図である。
【図１３】図１３は図４に示すＣＰＵの近傍の他の物品の属性組を生成する処理を示すフロー図である。
【図１４】図１４は図４に示すＣＰＵの物品Ｘの属性組を低減する処理を示すフロー図である。
【図１５】図１５は図４に示すＣＰＵの単語の決定（１）処理を示すフロー図である。
【図１６】図１６は図４に示すＣＰＵの物品Ｘの呼び名の候補を生成する処理を示すフロー図である。
【図１７】図１７は図４に示すＣＰＵの単語の決定（２）処理を示すフロー図である。
【発明を実施するための形態】
【００２７】
図１を参照して、この実施例のコミュニケーションシステム（以下、単に「システム」という。）１０は、コミュニケーションロボット(以下、単に「ロボット」という。)１２を含む。このロボット１２は、音声および身体動作（ジェスチャ）の少なくとも一方を用いて、人間や他のロボットとコミュニケーションを行うことができる。また、ロボット１２は、たとえば無線ＬＡＮなどのネットワーク１４を介してサーバ２０にアクセスすることができる。この実施例のロボット１２は、サーバ２０と協働して、人間１６が音声、視線、および指差しで指示する物品を特定し、たとえばその物品を人間１６に持って行くなどの動作を実行する。
【００２８】
人間１６には、無線タグ１８が装着されるとともに、図示しないが、モーションキャプチャのためのマーカが付着されている。無線タグ１８は、識別情報を含む電波信号を発信する。ここでは、電波信号に含まれる識別情報は、人間１６を個別に識別するために用いられる。マーカは、典型的には、人間の頭頂、両肩、両肘、両手の人差し指の先端などに設定されていて、それらのマーカが、人間１６の全体とともに、サーバ２０に制御されるカメラ１２０によって撮影される。カメラ１２０は、実施例では、３つ設けられ、人間１６を３方向から撮影し、そのカメラ映像についてのデータ（カメラ映像データ）をサーバ２０に供給する。
【００２９】
サーバ２０は、ネットワーク１４に接続され、上述のようにして入力されるカメラ映像データに基づいて、マーカの動きを検出するモーションキャプチャ処理を実行するとともに、たとえば肌色領域を検出することによって、人間１６の顔の位置を特定することができる。
【００３０】
このシステム１０では、上述のように、ロボット１２が人間１６の指示する物品を対象物として特定するものである。対象物となり得る物品の例として、この実施例では、本（書籍）２４を用いる。本２４（図１では、「ＯＢＪ」と表記してある。）には、その本を識別可能な情報（識別情報）を電波信号に含んで発信する無線タグ１８が付着されている。
【００３１】
ただし、対象物となり得る物品は実施例の書籍だけでなく、もし家庭用のシステムであれば、家庭内のあらゆる物品が考えられる。また、当然、家庭用としてだけではなく、人間と一緒に働く任意の場所（会社、事務所、工場など）での利用が考えられる。かかる場合には、任意の場所に存在する種々の物品が対象物となり得る。
【００３２】
そして、このシステム１０が対象とするすべての物品（本２４）についての情報は、サーバ２０に接続された物品辞書データベース（ＤＢ）１２２に登録される。物品辞書ＤＢ１２２については後述する。
【００３３】
また、システム１０が対象とする人間１６に装着された無線タグ１８から発信された識別情報は、複数存在するアンテナ１２４のいずれかを介して無線タグ読取装置２０８（図４参照）で読み取られる。そして、無線タグ読取装置２０８で読み取られた識別情報はサーバ２０に与えられる。これに応じて、サーバ２０は、識別情報から人間１１６を特定するとともに、識別情報を受信した（読み取った）アンテナ１２４が配置されている位置から人間１６の若干大まかな位置を把握（検出）する。
【００３４】
なお、図１では、簡単のため、１台のロボット１２を示してあるが、２台以上であってよい。また、人間１６は１人に限定される必要はなく、無線タグ１８で識別できるので、複数であってよい。
【００３５】
また、図１に示す実施例では、このシステム１０を設置している空間のワールド座標を用いてロボット１２、人間１６、物品２４などの位置が表現されていて、他方、ロボット１２の制御はロボット座標で行なわれるので、詳細は説明しないが、ロボット１２は、後述の処理における必要に応じて、ロボット座標とワールド座標との間の座標変換処理を実行するものである。
【００３６】
図２を参照して、ロボット１２のハードウェアの構成について説明する。図２は、この実施例のロボット１２の外観を示す正面図である。ロボット１２は台車３０を含み、台車３０の下面にはロボット１２を自律移動させる２つの車輪３２および１つの従輪３４が設けられる。２つの車輪３２は車輪モータ３６（図３参照）によってそれぞれ独立に駆動され、台車３０すなわちロボット１２を前後左右の任意方向に動かすことができる。また、従輪３４は車輪３２を補助する補助輪である。したがって、ロボット１２は、配置された空間内を自律制御によって移動可能である。
【００３７】
台車３０の上には、円柱形のセンサ取り付けパネル３８が設けられ、このセンサ取り付けパネル３８には、多数の赤外線距離センサ４０が取り付けられる。これらの赤外線距離センサ４０は、センサ取り付けパネル３８すなわちロボット１２の周囲の物体（人間や障害物など）との距離を測定するものである。
【００３８】
なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、超音波距離センサやミリ波レーダなどを用いることもできる。
【００３９】
センサ取り付けパネル３８の上には、胴体４２が直立するように設けられる。また、胴体４２の前方中央上部（人の胸に相当する位置）には、上述した赤外線距離センサ４０がさらに設けられ、ロボット１２の前方の主として人間との距離を計測する。また、胴体４２には、その側面側上端部のほぼ中央から伸びる支柱４４が設けられ、支柱４４の上には、全方位カメラ４６が設けられる。全方位カメラ４６は、ロボット１２の周囲を撮影するものであり、後述する眼カメラ７０とは区別される。この全方位カメラ４６としては、たとえばＣＣＤやＣＭＯＳのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ４０および全方位カメラ４６の設置位置は、当該部位に限定されず適宜変更され得る。
【００４０】
胴体４２の両側面上端部（人の肩に相当する位置）には、それぞれ、肩関節４８Ｒおよび肩関節４８Ｌによって、上腕５０Ｒおよび上腕５０Ｌが設けられる。図示は省略するが、肩関節４８Ｒおよび肩関節４８Ｌは、それぞれ、直交する３軸の自由度を有する。すなわち、肩関節４８Ｒは、直交する３軸のそれぞれの軸廻りにおいて上腕５０Ｒの角度を制御できる。肩関節４８Ｒの或る軸（ヨー軸）は、上腕５０Ｒの長手方向（または軸）に平行な軸であり、他の２軸（ピッチ軸およびロール軸）は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節４８Ｌは、直交する３軸のそれぞれの軸廻りにおいて上腕５０Ｌの角度を制御できる。肩関節４８Ｌの或る軸（ヨー軸）は、上腕５０Ｌの長手方向（または軸）に平行な軸であり、他の２軸（ピッチ軸およびロール軸）は、その軸にそれぞれ異なる方向から直交する軸である。
【００４１】
また、上腕５０Ｒおよび上腕５０Ｌのそれぞれの先端には、肘関節５２Ｒおよび肘関節５２Ｌが設けられる。図示は省略するが、肘関節５２Ｒおよび肘関節５２Ｌは、それぞれ１軸の自由度を有し、この軸（ピッチ軸）の軸回りにおいて前腕５４Ｒおよび前腕５４Ｌの角度を制御できる。
【００４２】
前腕５４Ｒおよび前腕５４Ｌのそれぞれの先端には、人の手に相当するハンド５６Ｒおよびハンド５６Ｌがそれぞれ設けられる。これらのハンド５６Ｒおよび５６Ｌは、詳細な図示は省略するが、開閉可能に構成され、それによってロボット１２は、ハンド５６Ｒおよび５６Ｌを用いて物体を把持または挟持することができる。ただし、ハンド５６Ｒ，５６Ｌの形状は実施例の形状に限らず、人間の手に酷似した形状や機能を持たせるようにしてもよい。
【００４３】
また、図示は省略するが、台車３０の前面，肩関節４８Ｒと肩関節４８Ｌとを含む肩に相当する部位，上腕５０Ｒ，上腕５０Ｌ，前腕５４Ｒ，前腕５４Ｌ，球体５６Ｒおよび球体５６Ｌには、それぞれ、接触センサ５８（図３で包括的に示す）が設けられる。台車３０の前面の接触センサ５８は、台車３０への人間や他の障害物の接触を検知する。したがって、ロボット１２は、その自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪３２の駆動を停止してロボット１２の移動を急停止させることができる。また、その他の接触センサ５８は、当該各部位に触れたかどうかを検知する。なお、接触センサ５８の設置位置は、当該部位に限定されず、適宜な位置（人の胸，腹，脇，背中および腰に相当する位置）に設けられてもよい。
【００４４】
胴体４２の中央上部（人の首に相当する位置）には首関節６０が設けられ、さらにその上には頭部６２が設けられる。図示は省略するが、首関節６０は、３軸の自由度を有し、３軸の各軸廻りに角度制御可能である。或る軸（ヨー軸）はロボット１２の真上（鉛直上向き）に向かう軸であり、他の２軸（ピッチ軸、ロール軸）は、それぞれ、それと異なる方向で直交する軸である。
【００４５】
頭部６２には、人の口に相当する位置に、スピーカ６４が設けられる。スピーカ６４は、ロボット１２が、それの周辺の人間に対して音声ないし音によってコミュニケーションを取るために用いられる。また、人の耳に相当する位置には、マイク６６Ｒおよびマイク６６Ｌが設けられる。以下、右のマイク６６Ｒと左のマイク６６Ｌとをまとめてマイク６６ということがある。マイク６６は、周囲の音、とりわけコミュニケーションを実行する対象である人間の音声を取り込む。さらに、人の目に相当する位置には、眼球部６８Ｒおよび眼球部６８Ｌが設けられる。眼球部６８Ｒおよび眼球部６８Ｌは、それぞれ眼カメラ７０Ｒおよび眼カメラ７０Ｌを含む。以下、右の眼球部６８Ｒと左の眼球部６８Ｌとをまとめて眼球部６８ということがある。また、右の眼カメラ７０Ｒと左の眼カメラ７０Ｌとをまとめて眼カメラ７０ということがある。
【００４６】
眼カメラ７０は、ロボット１２に接近した人間の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。この実施例では、ロボット１２は、この眼カメラ７０からの映像信号によって、人間１６の左右両目のそれぞれの視線方向（ベクトル）を検出する。その視線検出方法は具体的には、２つのカメラを用いるものとして特開２００４‐２５５０７４号公報に、１つのカメラを用いるものとして特開２００６‐１７２２０９号公報や特開２００６‐２８５５３１号公報開示されるが、ここではその詳細は重要ではないので、これらの公開公報を引用するにとどめる。
【００４７】
ただし、人間１６の視線ベクトルの検出のためには、よく知られているアイマークレコーダなどが利用されてもよい。
【００４８】
また、眼カメラ７０は、上述した全方位カメラ４６と同様のカメラを用いることができる。たとえば、眼カメラ７０は、眼球部６８内に固定され、眼球部６８は、眼球支持部（図示せず）を介して頭部６２内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、２軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この２軸の一方は、頭部６２の上に向かう方向の軸（ヨー軸）であり、他方は、一方の軸に直交しかつ頭部６２の正面側（顔）が向く方向に直行する方向の軸（ピッチ軸）である。眼球支持部がこの２軸の各軸廻りに回転されることによって、眼球部６８ないし眼カメラ７０の先端（正面）側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ６４，マイク６６および眼カメラ７０の設置位置は、当該部位に限定されず、適宜な位置に設けられてよい。
【００４９】
このように、この実施例のロボット１２は、車輪３２の独立２軸駆動，肩関節４８の３自由度（左右で６自由度），肘関節５２の１自由度（左右で２自由度），首関節６０の３自由度および眼球支持部の２自由度（左右で４自由度）の合計１７自由度を有する。
【００５０】
図３はロボット１２の電気的な構成を示すブロック図である。この図３を参照して、ロボット１２は、ＣＰＵ８０を含む。ＣＰＵ８０は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス８２を介して、メモリ８４，モータ制御ボード８６，センサ入力／出力ボード８８および音声入力／出力ボード９０に接続される。
【００５１】
メモリ８４は、図示は省略をするが、ＲＯＭ，ＨＤＤおよびＲＡＭを含む。ＲＯＭおよびＨＤＤには、ロボット１２の動作を制御するための制御プログラムが予め記憶される。たとえば、各センサの出力（センサ情報）を検知するための検知プログラムや、外部コンピュータとの間で必要なデータやコマンドを送受信するための通信プログラムなどが記録される。また、ＲＡＭは、ワークメモリやバッファメモリとして用いられる。
【００５２】
さらに、この実施例では、ロボット１２は、人間１６とのコミュニケーションをとるために発話したり、ジェスチャしたりできるように構成されているが、メモリ８４に、このような発話やジェスチャのための発話／ジェスチャ辞書８５Ａが設定されている。
【００５３】
モータ制御ボード８６は、たとえばＤＳＰで構成され、各腕や首関節および眼球部などの各軸モータの駆動を制御する。すなわち、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、右眼球部６８Ｒの２軸のそれぞれの角度を制御する２つのモータ（図３では、まとめて「右眼球モータ９２」と示す）の回転角度を制御する。同様にして、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、左眼球部６８Ｌの２軸のそれぞれの角度を制御する２つのモータ（図３では、まとめて「左眼球モータ９４」と示す）の回転角度を制御する。
【００５４】
また、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、肩関節４８Ｒの直交する３軸のそれぞれの角度を制御する３つのモータと肘関節５２Ｒの角度を制御する１つのモータとの計４つのモータ（図３では、まとめて「右腕モータ９６」と示す）の回転角度を制御する。同様にして、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、肩関節４８Ｌの直交する３軸のそれぞれの角度を制御する３つのモータと肘関節５２Ｌの角度を制御する１つのモータとの計４つのモータ（図３では、まとめて「左腕モータ９８」と示す）の回転角度を制御する。
【００５５】
さらに、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、首関節６０の直交する３軸のそれぞれの角度を制御する３つのモータ（図３では、まとめて「頭部モータ１００」と示す）の回転角度を制御する。そして、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、車輪３２を駆動する２つのモータ（図３では、まとめて「車輪モータ３６」と示す）の回転角度を制御する。
【００５６】
モータ制御ボード８６にはさらにハンドアクチュエータ１０８が結合され、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、ハンド５６Ｒ，５６Ｌの開閉を制御する。
【００５７】
なお、この実施例では、車輪モータ３６を除くモータは、制御を簡素化するためにステッピングモータ（すなわち、パルスモータ）を用いる。ただし、車輪モータ３６と同様に直流モータを用いるようにしてもよい。また、ロボット１２の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更された、たとえば、他の実施例では、エアアクチュエータが適用されてもよい。
【００５８】
センサ入力／出力ボード８８は、モータ制御ボード８６と同様に、ＤＳＰで構成され、各センサからの信号を取り込んでＣＰＵ８０に与える。すなわち、赤外線距離センサ４０のそれぞれからの反射時間に関するデータがこのセンサ入力／出力ボード８８を通じてＣＰＵ８０に入力される。また、全方位カメラ４６からの映像信号が、必要に応じてセンサ入力／出力ボード８８で所定の処理を施してからＣＰＵ８０に入力される。眼カメラ７０からの映像信号も、同様にして、ＣＰＵ８０に入力される。また、上述した複数の接触センサ５８（図３では、まとめて「接触センサ５８」と示す）からの信号がセンサ入力／出力ボード８８を介してＣＰＵ８０に与えられる。音声入力／出力ボード９０もまた、同様に、ＤＳＰで構成され、ＣＰＵ８０から与えられる音声合成データに従った音声または声がスピーカ６４から出力される。また、マイク６６からの音声入力が、音声入力／出力ボード９０を介してＣＰＵ８０に与えられる。
【００５９】
また、ＣＰＵ８０は、バス８２を介して通信ＬＡＮボード１０２に接続される。通信ＬＡＮボード１０２は、たとえばＤＳＰで構成され、ＣＰＵ８０から与えられた送信データを無線通信装置１０４に与え、無線通信装置１０４は送信データを、ネットワーク１４を介してサーバ２０に送信する。また、通信ＬＡＮボード１０２は、無線通信装置１０４を介してデータを受信し、受信したデータをＣＰＵ８０に与える。たとえば、送信データとしては、ロボット１２からサーバ２０への信号（コマンド）であったり、ロボット１２が行ったコミュニケーションについての動作履歴情報（履歴データ）などであったりする。このように、コマンドのみならず履歴データを送信するのは、メモリ８４の容量を少なくするためと、消費電力を抑えるためである。この実施例では、履歴データはコミュニケーションが実行される度に、サーバ２０に送信されたが、一定時間または一定量の単位でサーバ２０に送信されるようにしてもよい。
【００６０】
さらに、ＣＰＵ８０は、バス８２を介して無線タグ読取装置１０６が接続される。無線タグ読取装置１０６は、アンテナ（図示せず）を介して、無線タグ１８（ＲＦＩＤタグ）から送信される識別情報の重畳された電波を受信する。そして、無線タグ読取装置１０６は、受信した電波信号を増幅し、当該電波信号から識別信号を分離し、当該識別情報を復調（デコード）してＣＰＵ８０に与える。図１によれば無線タグ１８は、ロボット１２が配置された会社の受付や一般家庭の居間などに居る人間１６や物品（この実施例では、本２４）に装着され、無線タグ読取装置１０６は、通信可能範囲内の無線タグ１８から発信される電波信号を検出する。
【００６１】
なお、無線タグ１８は、アクティブ型であってもよいし、無線タグ読取装置１０６から送信される電波に応じて駆動されるパッシブ型であってもよい。
【００６２】
図４を参照して、サーバ２０のハードウェアの構成について説明する。図４に示すように、サーバ２０は、ＣＰＵ２００を含む。ＣＰＵ２００は、プロセッサとも呼ばれ、バス２０２を介して、メモリ２０４、カメラ制御ボード２０６、無線タグ読取装置２０８、ＬＡＮ制御ボード２１０、入力装置制御ボード２１２、およびモニタ制御ボード２１４に接続される。
【００６３】
ＣＰＵ２００は、サーバ２０の全体の制御を司る。メモリ２０４は、ＲＯＭ、ＲＡＭ、およびＨＤＤなどを包括的に示したものであり、サーバ２０の動作のためのプログラムを記録したり、ＣＰＵ２００が動作する際のワークエリアとして機能したりする。カメラ制御ボード２０６は、当該制御ボード２０６に接続されるカメラ１２０を制御するためのものである。
【００６４】
無線タグ読取装置２０８は、当該制御ボード２０８に接続されるアンテナ１２４を介して人間１６や物品（本）２４に装着された無線タグ１８から送信される識別情報の重畳された電波を受信する。そして、無線タグ読取装置２０８は、受信した電波信号を増幅し、当該電波信号から識別信号を分離し、当該識別情報を復調（デコード）してＣＰＵ２００に与える。アンテナ１２４は、ロボット１２が配置された会社の受付や一般家庭の各部屋などにくまなく配置され、システム１０が対象とするすべての物品（本）２４および人間１６の無線タグ１８から電波を受信できるようになっている。したがって、アンテナ１２４は複数存在するが、図１および図４では包括的に示している。
【００６５】
また、ＬＡＮ制御ボード２１０は、当該制御ボード２１０に接続される無線通信装置２１６を制御し、サーバ２０が外部のネットワーク１４に無線によってアクセスできるようにするものである。さらに、入力装置制御ボード２１２は、当該制御ボード２１２に接続される入力装置としてのたとえば、キーボードやマウスなどによる入力を制御するものである。そして、モニタ制御ボード２１４は、当該制御ボード２１４に接続されるモニタへの出力を制御するものである。
【００６６】
また、サーバ２０は、図示しないインターフェースによって、物品辞書ＤＢ１２２および音声認識辞書ＤＢ１２６（図１参照）に接続されている。
【００６７】
メモリ２０４（ＲＡＭ）には、後述するように、物品ローカル辞書データ５０４ａ、音声認識ローカル辞書データ５０４ｂ、発話辞書データ５０４ｃおよび個人正誤情報データ５０４ｄが設定（記憶）されている。
【００６８】
物品ローカル辞書データ５０４ａに対応する物品ローカル辞書は、後述するように、物品辞書ＤＢ１２２から抽出された内容が登録される辞書である。サーバ２０は、ロボット１２が人間１６を認識した際に、当該人間１６の近傍に存在する物品（本）２４の情報だけを物品辞書ＤＢ１２２から抽出して物品ローカル辞書に登録する。音声認識ローカル辞書データ５０４ｂに対応する音声認識ローカル辞書は、後述するように、音声認識辞書ＤＢ１２６から抽出された内容が登録される辞書である。サーバ２０は、ロボット１２が人間１６を認識して物品ローカル辞書を作成すると、当該物品ローカル辞書に登録されている単語を音声認識するために必要な情報を音声認識辞書ＤＢ１２６から抽出して音声認識ローカル辞書に登録する。したがって、物品ローカル辞書および音声認識ローカル辞書は、人間１６の位置の変化に応じて動的に書き換えられる。このように、音声認識辞書ＤＢ１２６に記憶された音声認識辞書から音声認識ローカル辞書を作成し、音声認識に使用する辞書を小さくすることによって音声認識の対象となる単語（音素記号列）の数を少なくし、音声認識の処理にかかる時間を短くするとともに正しく音声認識できる割合を高めることができる。
【００６９】
発話辞書データ５０４ｃに対応する発話辞書は、サーバ２０がロボット１２に、人間１６に対して発話させる音声の内容を決定するために必要な情報を記憶している。また、個人正誤情報データ５０４ｄに対応する個人正誤情報は、システム１０が、人間１６が指示した物品（本）２４を特定することに最終的に成功したか否かを示す情報（音声認識の成功率）を、人間１６の識別情報（ユーザＩＤ）別に記憶している。
【００７０】
次に、図５を参照して、物品辞書ＤＢ１２２に記憶される物品辞書は、たとえばユーコード（Ucode）のようなＩＤをそれぞれの物品の１つに割り当て、物品毎にその名称および属性などの必要な情報を登録している。なお、ユーコードは、具体的には、１２８ビットの数字からなり、３４０兆の１兆倍のさらに１兆倍の数の物品を個別に識別できるものである。ただし、この物品辞書ＤＢ１２２に使うＩＤは必ずしもこのようなユーコードである必要はなく、適宜の数字や記号の組み合わせからなるものであってよい。
【００７１】
このような物品辞書は、システム１０（ロボット１２およびサーバ２０）が識別すべき対象物となるすべての、たとえば家庭内の物品をＩＤと文字列とで登録するものであり、いわばグローバル辞書に相当する。
【００７２】
物品辞書には、１つの物品（本）２４についての情報が１つのレコードとして登録されている。そして、上述したように、たとえば、１つのレコードには、本のＩＤ以外に「名称」および「属性」が記憶される。
【００７３】
なお、図示は省略するが、本２４についての情報として、「著者」および「出版社」などがさらに記憶されてもよい。
【００７４】
「名称」は、対応する本２４の表題（題号）である。また、「属性」は、本２４に関連する情報であり、この実施例では、本２４を補足的に説明する内容である。この実施例では、「属性」の項目には、本２４の種類（漫画、小説、雑誌など）、カバーの色および厚み（厚い、薄い）の情報が記憶されている。図５では分かり易く示すために、名称および属性の両方について、テキスト形式の文字列で記載してあるが、実際には、属性については、ローマ字で表記した文字列が記述されている。
【００７５】
次に、音声認識辞書ＤＢ１２６について説明する。一般的に、音声認識辞書には、単語辞書と文法辞書とが存在するが、音声認識辞書ＤＢ１２６は単語辞書についてのデータを記憶する。文法辞書についての説明は省略する。図示は省略するが、音声認識辞書ＤＢ１２６には、物品の名称（この実施例では、本２４の名称）についてのテキスト形式の単語（または物品の識別情報）の各々に対応して、テキスト形式の単語に対応する音素記号形式（音素記号列）が記述されたテーブルのデータ（音声認識辞書データ）が記憶される。
【００７６】
音声認識の処理では、入力された音声を音素に分解し、分解した各音素について当該音素を表す記号を生成する。これによって、入力された音声の単語に相当する音素記号列が生成される。次に、入力された音声の単語に相当する音素記号列が、音声認識辞書ＤＢ１２６（実際には、後述する音声認識ローカル辞書）に記憶されている音素記号列と比較される。そして、入力された音声の単語に相当する音素記号列ともっとも近い音素記号列を音声認識辞書ＤＢ１２６（音声認識ローカル辞書）内で特定し、この特定した音素記号列に対応して記述されている単語を音声認識結果として出力する。
【００７７】
上述したように、このシステム１０では、人間１６が音声と視線および指差しによって物品（本）２４を指示すると、ロボット１２とサーバ２０とが協働して、人間１６が指示した物品（本）２４を特定し、その特定した物品（本）２４をロボット１２が人間１６のところに運搬などする。以下において、この人間１６とシステム１０とのやり取りをコミュニケーションと呼ぶことがある。
【００７８】
より詳細に述べると、このシステム１０では、人間１６がロボット１２に近づくと、ロボット１２が人間１６を無線タグ１８によって認識する。サーバ２０には、システム１０が対象とする物品（本）２４のすべてが登録された物品辞書ＤＢ１２２、および音声認識によって物品（本）２４を特定するための単語が登録された音声認識辞書ＤＢ１２６が接続されている。ロボット１２は、人間１６を認識すると、当該人間１６の識別情報（ユーザＩＤ）をサーバ２０に送信するとともに、サーバ２０に対して物品辞書ＤＢ１２２および音声認識辞書ＤＢ１２６のローカル辞書（物品ローカル辞書、音声認識ローカル辞書）の作成を指示する。
【００７９】
ローカル辞書の作成の指示を受けると、サーバ２０では、ロボット１２が認識した人間１６の位置を特定し、特定した当該人間１６から所定の範囲内、たとえば、半径５ｍ以内にある物品（本）２４のレコードのみを物品辞書ＤＢ１２２から抽出して物品ローカル辞書を作成する。次に、音声認識辞書ＤＢ１２６から、物品ローカル辞書に登録されている物品（本）２４を音声認識するため必要な情報のみを抽出して音声認識ローカル辞書を作成する。
【００８０】
その後、ロボット１２は、認識した人間１６に対して、たとえば、「何か本を持ってきましょうか？」という発話を行う。この発話に対し、人間１６は、持ってきてほしい物品（本）２４に視線を向けつつ当該物品（本）２４を指差しながら、「漫画Ａを持ってきて」などと答える。
【００８１】
すると、ロボット１２は、「漫画Ａを持ってきて」という人間１６の声を音声認識し、人間１６の視線を推定し、指差した指が向かっている方向を推定することによって、人間１６が指示している物品（本）２４を特定する。
【００８２】
人間１６が指示している物品（本）２４を特定すると、サーバ２０は、人間１６に特定した物品（本）２４を確認するためにロボット１２が発話する音声の内容、たとえば、「赤色の漫画ですか？」を決定し、ロボット１２が当該物品（本）２４（名称「漫画Ａ」）を指し示しながらこれを発話する。つまり、ロボット１２は、特定した物品（本）２４を確認するための行動（確認行動）を行う。
【００８３】
このとき、サーバ２０は、発話の内容を、ロボット１２が認識した人間１６の近傍や特定した物品（本）２４の近傍に存在する他の物品とは異なる特徴（属性）を用いるとともに、音声認識し易い言葉で、物品（本）２４を確認するための発話内容を生成する。
【００８４】
ここで、音声認識し易い言葉を選択するようにしてあるのは、人間はロボットの発話内容を真似する傾向があるとの知見に基づき、次回以降に、人間が音声で指示した物品（本）２４を特定し易くするためである。ただし、発話内容が短すぎる場合には、音声認識を失敗する可能性が高くなり、一方、発話内容が長過ぎる場合には、人間によって真似されない可能性が高くなるため、この実施例では、２〜３個の属性の単語を用いて発話内容を生成するようにしてある。
【００８５】
ただし、これは単なる一例であり、発話内容は、属性の単語が長い場合には、１つの属性の単語のみを用いて決定しても良いし、属性の単語が短い場合には、さらに多くの属性を物品辞書に登録しておくことにより、４つ以上を用いて決定してもよい。
【００８６】
また、システム１０が特定した物品（本）２４を確認するために、ロボット１２がたとえば「赤色の漫画ですか？」と発話すると、人間１６は、「そうです」あるいは「ちがいます」などと発話し、ロボット１２に返答する。サーバ２０は、この人間１６の返答における音声を音声認識し、システム１０が特定した物品（本）２４が、人間１６が指示したものであるか否かを判断する。システム１０が特定した物品（本）２４が、人間１６が指示したものでなかった場合には、次の候補である物品（本）２４が、人間１６が指示したものであるか否かを確認する。一方、システム１０が特定した物品（本）２４が、人間１６が指示したものであった場合には、ロボット１２が当該物品（本）２４を人間１６のところにまで運搬する。
【００８７】
また、サーバ２０は、特定した物品（本）２４を確認した結果（正誤の情報）を累積的に記録する。サーバ２０は、この累積的に記録した正誤の情報を成功率（音声認識の成功率）として、発話内容を生成する際に参照する。
【００８８】
なお、発話内容を生成する際に単語（発話に使用する単語）を選択する方法が異なる以外は、出願人が先に出願し既に出願公開された特開平２００９−２２３１７１号に開示された内容とほぼ同じであり、また、本願発明の本質的な内容ではないため、この実施例においては、単語を決定する方法についてのみ、詳細に説明してある。
【００８９】
まず、特定した物品（本）２４（以下、「物品Ｘ」という。）の属性Ｆｃがすべて取得される。たとえば、名称「漫画Ａ」である物品（本）２４が特定された場合には、属性Ｆｃとして｛漫画、赤、薄い｝が取得される。次に、属性についての組（属性組）が生成される。この実施例では、属性Ｆｃのべき集合(Power set)が計算され、属性組として生成される。以下、同様である。ただし、属性Ｆｃのべき集合Ｐｏｗｅｒ（Ｆｃ）は、｛｛漫画｝、｛赤｝、｛薄い｝、｛漫画、赤｝、｛赤、薄い｝、｛漫画、薄い｝、｛漫画、赤、薄い｝｝である。
【００９０】
次に、特定した物品Ｘの近傍（たとえば、３０ｃｍ以内）に存在する他の物品が検出され、検出された他の物品についての属性が取得される。他の物品が複数存在する場合には、他の物品毎に属性組が生成（べき集合が計算）される。
【００９１】
たとえば、物品Ｘの近傍に、名称「漫画Ｂ」の本２４（以下、「物品１」という。）と、名称「雑誌Ｂ」の本２４（以下、「物品２」という。）が存在する場合には、これら他の物品１および物品２のそれぞれについて属性が取得され、それぞれについてべき集合が計算され、それぞれの属性組が生成される。ここで、物品１の属性は｛漫画、青、薄い｝であり、物品２の属性は｛雑誌、赤、厚い｝である。したがって、物品１のべき集合Ｐｏｗｅｒ（Ｆ１）は、｛｛漫画｝、｛青｝、｛薄い｝、｛漫画、青｝、｛青、薄い｝、｛漫画、薄い｝、｛漫画、青、薄い｝｝である。また、物品２のべき集合Ｐｏｗｅｒ（Ｆ２）は、｛｛雑誌｝、｛赤｝、｛厚い｝、｛雑誌、赤｝、｛赤、厚い｝、｛雑誌、厚い｝、｛雑誌、赤、厚い｝｝である。
【００９２】
次に、特定した物品２４の属性組と、近傍の他の物品２４の属性組とで共通する要素（共通要素）が抽出され、特定した物品２４の属性組から共通要素が削除される。具体的には、物品Ｘの属性組と物品１の属性組とから共通要素Ｅ１が抽出されるとともに、物品Ｘの属性組と物品２の属性組とから共通要素Ｅ２が抽出される。
【００９３】
この実施例においては、共通要素Ｅ１は、｛｛漫画｝、｛薄い｝、｛漫画、薄い｝｝である。また、共通要素Ｅ２は、｛赤｝である。したがって、共通要素の集合Ｓは、共通要素Ｅ１と共通要素Ｅ２との和であり、具体的には、｛｛漫画｝、｛赤｝、｛薄い｝、｛漫画、薄い｝｝である。したがって、特定した物品Ｘのべき集合Ｐｏｗｅｒ（Ｆｃ）の要素から集合Ｓの要素が削除（Ｐｏｗｅｒ（Ｆｃ）−Ｓ）されると、｛｛漫画、赤｝、｛赤、薄い｝、｛漫画、赤、薄い｝｝となる。
【００９４】
次に、Ｐｏｗｅｒ（Ｆｃ）−Ｓの要素のうち、単語数が最小となるものを抽出する。この演算子をたとえばｍｉｎ（）と定義する。したがって、ｍｉｎ（Ｐｏｗｅｒ（Ｆｃ）−Ｓ）は、｛｛漫画、赤｝、｛赤、薄い｝｝となる。
【００９５】
このように、単語数が最小となる要素を選択するのは、上述したように、発話内容を、音声認識を容易にする長さであり、かつ、人間に真似される程度の長さにするためである。
【００９６】
そして、ｍｉｎ（）の要素のうち、１つの要素が発話内容に使用される単語として選択される。この実施例では、特定した物品２４の近傍に存在する他の物品２４の属性との類似性が最も低い要素（非類似性が最も高い要素）が選択される。ただし、ここでの類似性は、音声で発音する場合に対比する単語が似ている度合を意味する。
【００９７】
具体的には、要素に含まれる属性を示す単語（文字列）についてのレーベンシュタイン距離の和を算出し、和が最大となる要素に含まれる属性を示す単語が発話内容に使用する単語として選択される。レーベンシュタイン距離（編集距離）は、２つの文字列がどの程度異なっているかを示す数値である。具体的には、文字の挿入や削除、置換によって、１つの文字列を別の文字列に変形するのに必要な手順の最小回数として与えられる。
【００９８】
ただし、この実施例では、正しく音声認識するようにするために、レーベンシュタイン距離を算出する場合には、ローマ字で示された文字列を用いるようにしてある。このローマ字で示された文字列は、物品辞書（物品ローカル辞書）に登録されている。ただし、属性に含まれる種類、色および厚みのそれぞれについて（同じ属性同士で）レーベンシュタイン距離が算出され、合計される。
【００９９】
図８（Ａ）に示すように、上記のように選出された｛漫画、赤｝についてレーベンシュタイン距離を算出する場合には、属性のうち、｛種類、色｝が対比される。したがって、特定した物品Ｘと物品１では、種類については“ｍａｎｇａ”ですべて一致し、色については“ａｋａ”と“ａｏ“とで２文字の置き換えが必要であるため、レーベンシュタイン距離ＬＤは「２」となる。また、特定した物品Ｘと物品２とでは、種類については“ｍａｎｇａ”と“ｚａｓｓｈｉ”で４文字の置き換えと１文字の追加が必要であり、色については“ａｋａ”ですべて一致するため、レーベンシュタイン距離ＬＤは「５」となる。したがって、発話内容として｛種類、色｝である｛漫画、赤｝を用いる場合のレーベンシュタイン距離ＬＤの合計は「７」となる。
【０１００】
一方、図８（Ｂ）に示すように、上記のように選出された｛赤、薄い｝についてレーベンシュタイン距離を算出する場合には、属性のうち、｛色、厚み｝が対比される。したがって、特定した物品Ｘと物品１とでは、色については“ａｋａ”と“ａｏ”で２文字の置き換えが必要であり、厚みについては“ｕｓｕｉ”ですべて一致するため、レーベンシュタイン距離ＬＤは「２」となる。また、特定した物品Ｘと物品２とでは、色については“ａｋａ”ですべて一致し、厚みについては“ｕｓｕｉ”と“ａｔｓｕｉ”で１文字の追加と１文字の置き換えが必要であるため、レーベンシュタイン距離は「２」となる。したがって、発話内容として｛色、厚み｝である｛赤、薄い｝を用いる場合のレーベンシュタイン距離ＬＤの合計は「４」となる。
【０１０１】
以上より、発話内容としては、レーベンシュタイン距離ＬＤの合計が大きい｛漫画、赤｝が選択される。
【０１０２】
次に、特定した物品（本）２４の近傍に他の物品（本）２４が存在しない場合についての発話内容に使用する単語の選択方法につい説明する。
【０１０３】
特定した物品（本）２４の近傍に他の物品（本）２４が存在しない場合には、特定した物品（本）２４のすべての属性が取得される。特定した物品（本）２４の近傍に他の物品（本）２４が存在しない場合には、基本的には、属性のうち、種類、色および厚みの文字列のいずれを用いても、当該特定の物品（本）２４を確認することができるからである。
【０１０４】
ただし、人間１６の近傍に他の物品（本）２４が存在する場合には、当該他の物品（本）２４の属性の文字列とのレーベンシュタイン距離の和が最大となる属性の単語を発話内容に使用する単語として選択（決定）する。ここでは、他の物品との間で、属性の種類、色、厚みのそれぞれについてレーベンシュタイン距離ＬＤを算出し、種類、色、厚みについてのレーベンシュタイン距離ＬＤの和を算出する。そして、最も和の大きい単語（種類、色、厚みについての単語）を、発話内容に使用する単語として選択する。
【０１０５】
なお、レーベンシュタイン距離ＬＤを求める方法は、図８（Ａ）および（Ｂ）を用いて説明したとおりであり、重複した説明は省略する。
【０１０６】
図９は図４に示したメモリ２０４（ＲＡＭ）のメモリマップ５００の一例を示す図解図である。図９に示すように、ＲＡＭは、プログラム記憶領域５０２およびデータ記憶領域５０４を含む。
【０１０７】
プログラム領域５０２には、サーバ２０の全体制御を実行するための情報処理プログラムが記憶され、この情報処理プログラムは、動作制御プログラム５０２ａ、音声認識プログラム５０２ｂおよび発話内容生成プログラム５０２ｃなどによって構成される。これらのプログラムは、一度に全部または必要に応じて部分的に、ＨＤＤから読み出され、ＲＡＭのプログラム記憶領域５０２に記憶される。ただし、プログラムは、図示しないＲＯＭに記憶しておき、そこから読み出してもよい。
【０１０８】
動作制御プログラム５０２ａは、ロボット１２の指差し動作をなどの身体動作についての制御情報を算出し、ロボット１２に指示するためのプログラムである。音声認識プログラム５０２ｂは、ロボット１２から送信される音声信号に対応する音声を認識するためのプログラムである。発話内容生成プログラム５０２ｃは、確認行動における発話内容を生成するためのプログラムである。
【０１０９】
図示は省略するが、プログラム記憶領域５０２には、人間の視線方向を検出するためのプログラムなどの他のプログラムも記憶される。
【０１１０】
また、データ記憶領域５０４には、物品ローカル辞書データ５０４ａ、音声認識ローカル辞書データ５０４ｂ、発話辞書データ５０４ｃおよび個人正誤情報データ５０４ｄなどが記憶される。さらに、データ記憶領域５０４には、辞書登録フラグ５０４ｅが設けられる。
【０１１１】
物品ローカル辞書データ５０４ａは、物品辞書ＤＢ１２２に記憶されたオリジナルの物品辞書（グローバル辞書）から、ロボット１２から送信されたユーザＩＤで特定される人間１６を中心として所定の範囲内に存在する物品（本）２４のレコードを抽出した一部の物品辞書のデータである。音声認識ローカル辞書データ５０４ｂは、音声認識辞書ＤＢ１２６に記憶されたオリジナルの音声認識辞書（グローバル辞書）から、物品ローカル辞書データ５０４ａに対応する一部の物品辞書に登録された物品等を認識するために抽出した一部の音声認識辞書のデータである。
【０１１２】
発話辞書データ５０４ｃは、サーバ２０がロボット１２に、人間１６に対して発話させる音声の内容すなわち発話内容を生成するために必要な情報についてのデータである。
【０１１３】
この実施例では、物品の属性として、種類、色および厚みを含むようにしてあるため、発話内容は、次のような定型の文章で決定されている。たとえば、色と種類についての単語を使用する場合には、「○○の△△ですか？」という発話内容に決定されている。ただし、「○○」のところには、特定した物品Ｘの属性に記述された色（赤色、青色、黄色、茶色、白色、黒色など）についての単語が入り、「△△」のところには、特定した物品Ｘの属性に記述された種類（漫画、小説、雑誌など）の単語が入る。以下、同じ。
【０１１４】
また、厚みと種類についての単語が使用される場合には、「××△△ですか？」という発話内容に決定されている。ただし、「××」のところには、特定した物品Ｘの属性に記述された厚み（厚い、薄い）の単語が入る。以下、同じ。
【０１１５】
さらに、色と厚みについての単語が使用される場合には、「○○の××本ですか？」という発話内容に決定されている。ただし、この実施例では、物品として本２４を用いてを説明してあるため、「本」を発話するようにしてあるが、他の物品を用いる場合には、その普通名詞が用いられる。
【０１１６】
個人正誤情報データ５０４ｄは、ユーザＩＤに対応して音声認識の成功率が記述されたテーブルについてのデータである。たとえば、音声認識の正誤は、コミュニケーションの回数（累計）における音声認識を成功した回数（特定した物品（本）２４が正しかった回数）の割合（パーセンテージ）で表される。
【０１１７】
辞書登録フラグ５０４ｅは、確認行動における発話で使用することが決定され、物品Ｘを指示するための１つの属性についての単語と物品Ｘの普通名詞についての単語とで構成される語または複数の属性についての単語で構成される語（以下、これらを「特定語」という。）を音声認識辞書に登録するか否かを判断するためのフラグである。辞書登録フラグ５０４ｅは、１ビットのレジスタで構成されて、当該フラグがオンであれば、レジスタにデータ値「１」が設定され、当該フラグがオフであれば、レジスタにデータ値「０」が設定される。ただし、特定語を音声認識辞書に登録する場合に、辞書登録フラグ５０４ｅはオンされ、それを音声認識辞書に登録しない場合には、辞書登録フラグ５０４ｅはオフされる。
【０１１８】
たとえば、確認行動の発話において、物品Ｘの種類（ここでは、“漫画”）と色（ここでは、“赤”）の単語が使用される場合には、特定語として“赤色の漫画”が登録される。同様に、物品Ｘの種類と厚み（ここでは“厚い”）の単語が使用される場合には、特定語として“厚い漫画”が登録される。また、確認行動の発話において、物品Ｘの色と厚みの単語が使用される場合には、さらに物品Ｘの普通名詞の単語が用いられ、特定語として“赤色の厚い本”が登録される。説明は省略するが、他の種類、色および厚みの単語が使用される場合についても同様である。
【０１１９】
なお、図示は省略するが、データ記憶領域５０４には、情報処理プログラムの実行に必要な他のデータが記憶され、必要に応じて、カウンタ（タイマ）や他のフラグ等も設けられる。
【０１２０】
図１０は、図４に示したＣＰＵ２００の確認行動決定処理のフロー図である。図１０に示すように、ＣＰＵ２００は、確認行動決定処理を開始すると、ステップＳ１で、ロボット１２の位置と、特定した物品Ｘの位置とから指差し動作を生成する。
【０１２１】
次のステップＳ３では、初対面のユーザであるかどうかを判断する。ここでは、ＣＰＵ２００は、ロボット１２が認識した人間１６とコミュニケーションをとるのがはじめてであるか否か、つまり、当該人間１６の指示する物品（本）２４を特定するのがはじめてであるか否かを判断する。具体的には、ＣＰＵ２００は、ロボット１２から送信されたユーザＩＤが、個人正誤情報データ５０４ｄに登録されているかどうかを判断する。
【０１２２】
ステップＳ３で“ＹＥＳ”であれば、つまり初対面のユーザであれば、ステップＳ５で、確認行動の発話内容に含む（発話に使用する）単語を、特定した物品Ｘの名称に決定して、ステップＳ１３に進む。一方、ステップＳ３で“ＮＯ”であれば、つまり初対面のユーザでなければ、ステップＳ７で、当該ユーザについての音声認識の成功率が７０％以上であるかどうかを判断する。ただし、ＣＰＵ２００は、個人正誤情報データ５０４ｄを参照して、ロボット１２から送信されたユーザＩＤに対応して記述された成功率を取得する。
【０１２３】
なお、ステップＳ７では、音声認識の成功率が高いか低いかを判断する閾値として７０％を設定してあるが、これに限定される必要はなく、閾値はこのシステム１０を適用する環境や使用形態等によって自由に変更することができる。
【０１２４】
ステップＳ７で“ＮＯ”であれば、つまり音声認識の成功率が７０％未満であれば、ステップＳ５に進む。一方、ステップＳ７で“ＹＥＳ”であれば、つまり音声認識の成功率が７０％以上であれば、ステップＳ９で、後述する単語選択処理（図１１参照）を実行する。そして、ステップＳ１１で、辞書登録フラグ５０４ｅをオンして、ステップＳ１３に進む。図示および説明は省略したが、ＣＰＵ２００は、確認行動決定処理を開始したときに、辞書登録フラグ５０４ｅをオフする。
【０１２５】
ステップＳ１３では、発話内容を生成する。ここでは、ＣＰＵ２００は、発話辞書データ５０４ｃを参照して、確認行動における発話内容を生成する。このとき、ステップＳ５で選択された物品Ｘの名称を示す単語またはステップＳ９で選択された属性についての単語が用いられる。
【０１２６】
次のステップＳ１５では、辞書登録フラグ５０４ｅがオンであるかどうかを判断する。ステップＳ１５で“ＮＯ”であれば、つまり辞書登録フラグ５０４ｅがオフであれば、そのままステップＳ１９に進む。一方、ステップＳ１５で“ＹＥＳ”であれば、つまり辞書登録フラグ５０４ｅがオンであれば、ステップＳ１７で、生成された発話内容に含まれる特定語を、物品Ｘに対応して当該ユーザＩＤとともに音声認識ＤＢ１２６内の音声認識辞書データに記憶（登録ないし追加）して、ステップＳ１９に進む。
【０１２７】
したがって、これ以降に、当該ユーザＩＤで特定されるユーザが当該物品Ｘを指示する場合に特定語を用いると、当該特定語を音声認識することにより、対応する当該物品Ｘを特定することができる。したがって、円滑なコミュニケーションを図ることができる。このような結果をもたらすのは、上述したように、ロボット１２が発声した内容を人間が真似する傾向があるためである。
【０１２８】
ステップＳ１９では、ステップＳ１で生成した指差し動作と、ステップＳ１３で決定した発話内容とをロボット１２に送信して、確認行動決定処理を終了する。これに応じて、ロボット１２では、サーバ２０から指示された指差し動作を実行するとともに、サーバ２０から指示された発話内容を発話（音声出力）する。つまり、ロボット１２は、特定した物品Ｘについての確認行動を実行する。そして、図示は省略するが、その後のロボット１２へのユーザの返答（“はい”または“いいえ”）に応じて、サーバ２０は、この返答の内容を音声認識することにより、個人正誤情報データ５０４ｄを更新する。
【０１２９】
なお、このような確認決定処理は、ロボット１２からの要求がある場合に実行され、ロボット１２からの要求が無い場合には、待機状態となっている。
【０１３０】
図１１は、図１０のステップＳ９に示した単語選択処理のフロー図である。図１１に示すように、ＣＰＵ２００は、単語選択処理を開始すると、ステップＳ３１で、特定した物品Ｘの近傍に他の物品が在るかどうかを判断する。ここでは、ＣＰＵ２００は、物品Ｘに装着された無線タグ１８から発信された電波を受信したアンテナ１２４と同じアンテナ１２４によって電波を受信された物品２４が在るかどうかを判断する。
【０１３１】
ステップＳ３１で“ＹＥＳ”であれば、つまり物品Ｘの近傍に他の物品２４が在る場合には、ステップＳ３３で、後述する物品Ｘの属性組を生成する処理（図１２参照）を実行し、ステップＳ３５で、後述する物品Ｘの近傍にある他の物品の属性組を生成する処理（図１３参照）を実行する。続いて、ステップＳ３７で、後述する物品Ｘの属性組を低減する処理（図１４参照）を実行し、ステップＳ３９で、物品Ｘの属性組から単語数が最小の属性組を抽出する。そして、ステップＳ４１で、後述する単語選択（１）処理（図１５参照）を実行して、確認行動決定処理にリターンする。
【０１３２】
また、ステップＳ３１で“ＮＯ”であれば、つまり物品Ｘの近傍に他の物品２４が無い場合には、ステップＳ４３で、後述する物品Ｘの呼び名の候補を決定する処理（図１６参照）を実行する。次のステップＳ４５では、ユーザ１６の近傍に他の物品２４が在るかどうかを判断する。ここでは、ＣＰＵ２００は、特定されたユーザＩＤが示すユーザ１６に装着された無線タグ１８から発信された電波を受信したアンテナ１２４と同じアンテナ１２４によって電波を受信された物品２４が在るかどうかを判断する。
【０１３３】
ステップＳ４５で“ＮＯ”であれば、つまりユーザの近傍に他の物品２４が無ければ、ステップＳ５３で、候補の呼び名から１つの単語を所定のルールで選択して、確認行動決定処理にリターンする。たとえば、ＣＰＵ２００は、ステップＳ５３では、呼び名の候補から１の単語をランダムに選択したり、予めシステム１０ないしサーバ２０の管理者等が決定した１の属性についての単語を選択したりする。
【０１３４】
一方、ステップＳ４５で“ＹＥＳ”であれば、つまりユーザの近傍に他の物品２４が在れば、ステップＳ４７で、物品ローカル辞書データ５０４ａを参照して、近傍の他の物品２４の属性を検索する。ここでは、ＣＰＵ２００は、他の物品２４の物品ＩＤを検索する。続くステップＳ４９では、検索した物品ＩＤに対応して記載されたレコードから、当該他の物品２４の属性を取得する。以下、物品２４の属性を検索したり、属性を取得したりする場合について同様である。そして、ステップＳ５１で、後述する単語選択（２）処理（図１７参照）を実行して、確認行動決定処理にリターンする。
【０１３５】
図１２に示すように、ＣＰＵ２００は、図１１のステップＳ３３に示した物品Ｘの属性組を生成する処理を開始すると、ステップＳ６１で、物品Ｘの属性を検索する。続くステップＳ６３では、物品Ｘの属性を取得する。
【０１３６】
続いて、ステップＳ６５では、属性のべき集合を計算する。ここでは、上述したように、物品Ｘの属性Ｆｃについてのべき集合Ｐｏｗｅｒ（Ｆｃ）が計算される。そして、ステップＳ６７で、べき集合Ｐｏｗｅｒ（Ｆｃ）を物品Ｘの属性組として生成して、単語選択処理にリターンする。
【０１３７】
図１３に示すように、ＣＰＵ２００は、図１１のステップＳ３５に示した近傍の他の物品の属性組を生成する処理を開始すると、ステップＳ７１で、他の物品Ｋ（Ｋは他の物品を識別するための自然数である。以下、同じ。）の属性を検索し、ステップＳ７３で、他の物品Ｋの属性を取得する。次のステップＳ７５では、属性のべき集合Ｐｏｗｅｒ（ＦＫ）を計算する。そして、ステップＳ７７で、べき集合Ｐｏｗｅｒ（ＦＫ）を他の物品Ｋの属性組として生成し、単語選択処理にリターンする。
【０１３８】
なお、図１３に示す近傍の他の物品の属性組の生成処理は、他の物品毎に実行される。
【０１３９】
図１４に示すように、ＣＰＵ２００は、図１１のステップＳ３７に示した物品Ｘの属性組を低減する処理を開始すると、ステップＳ８１で、物品Ｘの属性組のべき集合Ｐｏｗｅｒ（Ｆｃ）と、他の物品Ｋの属性組のべき集合Ｐｏｗｅｒ（Ｋ）の共通要素を抽出する。ただし、他の物品Ｋが複数存在する場合には、他の物品Ｋ毎に共通要素が抽出される。次のステップＳ８３では、物品Ｘの属性組から共通要素を削除して、単語選択処理にリターンする。
【０１４０】
図１５に示すように、ＣＰＵ２００は、図１１に示すステップＳ４１に示した単語選択（１）処理を開始すると、物品Ｘの属性組の文字列と、他の物品Ｋの属性組の文字列のレーベンシュタイン距離ＬＤの和を算出する。次のステップＳ９１では、レーベンシュタイン距離ＬＤの和が最大となる属性組を確認行動で使用する単語として選択して、単語選択処理にリターンする。
【０１４１】
なお、物品Ｘの属性組の低減処理の結果、物品Ｘの属性組が一組しか残っていない場合には、単語選択（１）処理を実行するまでもなく、当該一組の属性組が確認行動で使用する単語として選択される。
【０１４２】
図１６に示すように、ＣＰＵ２００は、図１１に示すステップＳ４３に示した物品Ｘの呼び名の候補を生成する処理を開始すると、ステップＳ１０１で、物品Ｘの属性を検索する。次のステップＳ１０３では、物品Ｘの属性（この実施例では、種類、色、厚みについての単語）を取得する。そして、ステップＳ１０５で、各属性を確認行動で使用する単語の候補として決定し、単語選択処理にリターンする。
【０１４３】
図１７に示すように、ＣＰＵ２００は、図１１に示すステップＳ５１に示した単語選択（２）処理を開始すると、ステップＳ１１１で、候補の属性の文字列と、ユーザの位置近傍の他の物品毎の属性の文字列のレーベンシュタイン距離ＬＤの和を計算する。ただし、他の物品Ｘ毎に、種類、色および厚みのそれぞれについてのレーベンシュタイン距離ＬＤが求められ、その和が計算される。そして、ステップＳ１１３では、レーベンシュタイン距離ＬＤの和が最大となる属性（種類、色または厚み）を確認行動で使用する単語として選択し、単語選択処理にリターンする。
【０１４４】
この実施例によれば、特定した物品の近傍に存在する他の物品とは異なる属性組を抽出し、さらに、他の物品の属性組とレーベンシュタイン距離が最大の属性組を確認行動で使用する単語として選択するので、予め音声認識率を検出する必要が無く、確認行動で使用する単語を簡単に決定することができる。したがって、確認行動における発話内容を簡単に生成することができる。
【０１４５】
また、この実施例によれば、抽出された属性組のうち、単語数が最小となる属性組を抽出するので、人間にとって真似し易い言葉を発話内容に含めることができる。
【０１４６】
さらに、この実施例によれば、他の物品とは異なる属性組を発話内容に含めるとともに、当該属性組で決定される言葉（特定語）を、音声認識辞書にユーザに対応して追加的に登録するので、それ以降において、特定語が使用されたとしても、音声認識により特定語が指示する物品を特定することができる。したがって、当該ユーザとのコミュニケーションを円滑に行うことができる。
【０１４７】
なお、この実施例では、サーバが音声認識処理および確認行動決定処理を実行するようにしたが、これらの処理をロボットで実行するようにしてもよい。かかる場合には、音声認識辞書データ（音声認識ローカル辞書データ）、物品辞書データ（物品ローカル辞書データ）、発話辞書データおよび個人正誤情報データをロボット内部のメモリやロボットがアクセス可能な外部メモリに記憶する必要がある。
【符号の説明】
【０１４８】
１０  …コミュニケーションシステム
１２  …コミュニケーションロボット
１４  …ネットワーク
１８  …無線タグ
２０  …サーバ
２４  …物品（本）
８０  …ＣＰＵ
１２０  …カメラ
１２４  …アンテナ
２００  …ＣＰＵ
２０８  …無線タグ読取装置
【図１】
0005866646.tif 000002
【図２】
0005866646.tif 000003
【図３】
0005866646.tif 000004
【図４】
0005866646.tif 000005
【図５】
0005866646.tif 000006
【図６】
0005866646.tif 000007
【図７】
0005866646.tif 000008
【図８】
0005866646.tif 000009
【図９】
0005866646.tif 000010
【図１０】
0005866646.tif 000011
【図１１】
0005866646.tif 000012
【図１２】
0005866646.tif 000013
【図１３】
0005866646.tif 000014
【図１４】
0005866646.tif 000015
【図１５】
0005866646.tif 000016
【図１６】
0005866646.tif 000017
【図１７】
0005866646.tif 000018