(57)【要約】【課題】ロボットの自律動作における不自然さを軽減させる。【解決手段】可動部を有するロボットが、センサから出力される音声データまたは画像データに基づいて、ロボットに対する対話要求を検出し、検出された対話要求を示す検出データに検出の信頼度を含めて出力し、信頼度が所定レベルより高い場合は、検出データに基づいて可動部を動作させ、信頼度が所定レベルより高くない場合は、予め登録された動作データに基づいて可動部を動作させる。【選択図】図１
2012040655.tif 000002
【特許請求の範囲】
【請求項１】
可動部を有するロボットの制御方法であって、
センサから出力される音声データまたは画像データに基づいて、前記ロボットに対する対話要求を検出し、
前記検出された対話要求を示す検出データに前記検出の信頼度を含めて出力し、
前記信頼度が所定レベルより高い場合は、前記検出データに基づいて前記可動部を動作させ、
前記信頼度が前記所定レベルより高くない場合は、予め登録された動作データに基づいて前記可動部を動作させる、
ロボットの制御方法。
【請求項２】
請求項１に記載のロボットの制御方法であって、
前記ロボットは、前記可動部の複数の動作位置に対応する複数の前記動作データが記録される動作データ記録部を含み、
前記信頼度が前記所定レベルより高くない場合は、前記動作データ記録部に記録されている前記複数の動作データのうちの少なくとも１つの動作データに基づいて、前記可動部を動作させる、
ロボットの制御方法。
【請求項３】
請求項１または２に記載のロボットの制御方法であって、
前記検出データに基づく前記可動部の単位時間あたりの動作回数の減少に応じて、前記動作データに基づく前記可動部の前記単位時間あたりの動作回数を増加させる、
ロボットの制御方法。
【請求項４】
請求項１〜３の何れか一項に記載のロボットの制御方法であって、
前記センサから出力される前記音声データに基づいて、音声の到来方向を検出し、
前記検出データに前記信頼度および前記音声の到来方向を含めて出力し、
前記信頼度が前記所定レベルより高い場合は、前記検出データに含まれる前記音声の到来方向に前記可動部を動作させる、
ロボットの制御方法。
【請求項５】
請求項１〜４の何れか一項に記載のロボットの制御方法であって、
前記センサから出力される前記画像データに基づいて、前記ロボットに視線が向いている人物の位置または方向を検出し、
前記検出データに前記信頼度および前記人物の方向を含めて出力し、
前記信頼度が前記所定レベルより高い場合は、前記検出データに含まれる前記人物の方向に前記可動部を動作させる、
ロボットの制御方法。
【請求項６】
請求項２〜５の何れか一項に記載のロボットの制御方法であって、
前記動作データは、前記ロボットに対する動作を識別する動作識別子と対応付けられて前記動作データ記録部に記録され、
前記センサから出力される前記画像データに基づいて、所定動作による前記対話要求を検出し、
前記検出データに、前記信頼度および検出された前記所定動作に対応する前記動作識別子を含めて出力し、
前記信頼度が前記所定レベルより高い場合は、前記動作データ記録部に記録されている、前記検出データに含まれる前記動作識別子に対応する前記動作データに基づいて、前記可動部を動作させる、
ロボットの制御方法。
【請求項７】
請求項１〜６の何れか一項に記載のロボットの制御方法であって、
前記ロボットは、音声または画像の特徴を示す特徴データが記録される特徴データ記録部を含み、
前記センサから出力される前記音声データまたは前記画像データと、前記特徴データ記録部に記録されている前記特徴データとの類似度に基づいて、前記信頼度を算出する、
ロボットの制御方法。
【請求項８】
請求項２〜６の何れか一項に記載のロボットの制御方法であって、
前記ロボットは、複数の人物の音声の特徴を示す複数の特徴データが、人物を特定する人物識別子と対応付けられて記録される特徴データ記録部を含み、
前記動作データは、前記人物識別子と対応付けられて前記動作データ記録部に記録され、
前記センサから出力される前記音声データと、前記特徴データ記録部に記録されている前記特徴データとに基づいて、前記音声データに対応する前記人物識別子を検出し、
前記検出データに、前記信頼度および検出された前記人物識別子を含めて出力し、
前記信頼度が前記所定レベルより高い場合は、前記動作データ記録部に記録されている、前記検出データに含まれる前記人物識別子に対応する前記動作データに基づいて、前記可動部を動作させる、
ロボットの制御方法。
【請求項９】
可動部を有するロボットに、
センサから出力される音声データまたは画像データに基づいて、前記ロボットに対する対話要求を検出する機能と、
前記検出された対話要求を示す検出データに前記検出の信頼度を含めて出力する機能と、
前記信頼度が所定レベルより高い場合は、前記検出データに基づいて前記可動部を動作させる機能と、
前記信頼度が前記所定レベルより高くない場合は、予め登録された動作データに基づいて前記可動部を動作させる機能と、
を実現させるためのプログラム。
【請求項１０】
可動部と、
音声または画像を検出して音声データまたは画像データを出力するセンサと、
前記音声データまたは前記画像データに基づいて、対話要求を検出する対話要求検出部と、
前記検出された対話要求を示す検出データに前記検出の信頼度を含めて出力する検出データ出力部と、
前記信頼度が所定レベルより高い場合は、前記検出データに基づいて前記可動部を動作させ、前記信頼度が前記所定レベルより高くない場合は、予め登録された動作データに基づいて前記可動部を動作させる動作制御部と、
を備えるロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律動作可能なロボットの制御に関する。
【背景技術】
【０００２】
従来、遠隔コミュニケーションにおいて、遠隔地からロボットを制御することで、音声と映像に加えて身体性を伝達することで豊かなコミュニケーションを実現する方法がある。このような遠隔ロボットメディア型コミュニケーションにおいては、参加者に視線を向けることが重要であるといわれている。
【０００３】
遠隔ロボットメディア型コミュニケーションにおいて、参加者に視線を向ける方法の一例としては、遠隔地からＰＣ上の操作画面（ＧＵＩ）をマウスやジョイスティック、ゲームパッドを操作することにより、ロボットの視線を参加者に向ける方法がある。また、他の例としては、遠隔地においてカメラやマイク、センサを用いて人の身体動作を計測し、この計測結果をベースにロボットに制御コマンドを送信することにより、遠隔地の人の動きを忠実に再現する方法がある。また、別の例としては、ロボットに複数のマイクを設けることによって参加者の発話とその方向を検知し、検知した方向へ視線を動かす動作をさせるなど、ロボットに自律動作をさせる方法がある（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−１９８６５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の手法には次のような問題がある。例えば、遠隔地からＰＣ上の操作画面を操作することは、遠隔地の人が話すことや聞くことの妨げになったり、面倒なので操作しなくなったりするという問題がある。また、カメラやマイク、センサを用いて遠隔地の人の身体動作を計測する方法は、遠隔地においてカメラやセンサを導入する必要があり、コストが上がってしまうという問題がある。また、音声方向の検出に応じてロボットの視線を制御する方法の場合、雑音環境下で検出の誤りが増加したときには、視線動作が不適切なものになるという問題がある。
【０００６】
このように、遠隔ロボットを導入した場合、ロボットに対して話者に視線を向けさせる動作をさせることは簡単ではない。上述のように、面倒なのでロボットの操作が行われなくなったり、不適切な視線動作が発生したりすると、人（コミュニケーション参加者）はロボットの視線動作を信用しなくなり、さらにはロボットの方を見ないで音声だけでコミュニケーションを行うようになるという問題をも引き起こす。
【０００７】
これらの状況を鑑みた場合、遠隔ロボットメディア型コミュニケーションにおいて、ロボットの自律動作の不自然さを軽減させることが求められる。
【課題を解決するための手段】
【０００８】
本発明の一側面に係るロボットの制御方法では、可動部を有するロボットが、センサから出力される音声データまたは画像データに基づいて、ロボットに対する対話要求を検出し、検出された対話要求を示す検出データに検出の信頼度を含めて出力し、信頼度が所定レベルより高い場合は、検出データに基づいて可動部を動作させ、信頼度が所定レベルより高くない場合は、予め登録された動作データに基づいて可動部を動作させる。
【０００９】
なお、本発明において、「部」とは、単に物理的手段を意味するものではなく、その「部」が有する機能をソフトウェアによって実現する場合も含む。また、１つの「部」や装置が有する機能が２つ以上の物理的手段や装置により実現されても、２つ以上の「部」や装置の機能が１つの物理的手段や装置により実現されても良い。
【発明の効果】
【００１０】
本発明によれば、ロボットの自律動作における不自然さを軽減させることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態である遠隔コミュニケーションシステムの構成を示す図である。
【図２】ロボットの外観を示す図である。
【図３】テレワーカのためのユーザインターフェースの一例を示す図である。
【図４】ロボットの動作を制御する機能を含めた、ロボットの構成例を示す図である。
【図５】動作データを設定する際のユーザインタフェースの一例を示す図である。
【図６】動作データ記録部に人物または対象物の位置を登録する処理のフローチャートである。
【図７】動作制御部によるロボットの動作制御処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について、図面を参照して詳細に説明する。
【００１３】
＝＝システム構成＝＝
図1は本発明の一実施形態である遠隔コミュニケーションシステムの構成を示す図である。システムは、ロボット１０、ネットワーク１２、及び端末１４を含んで構成されている。
【００１４】
ロボット１０は、インターネットや専用回線等のネットワーク１２を介して、遠隔地の端末１４に接続される。
【００１５】
図２はロボット１０の外観を示す図である。なお、ここで示すロボット１０は一例であり、他の形態のロボットであっても構わない。図２に示されるように、ロボット１０は、頭部アクチュエータ２０、体部アクチュエータ２２、ビデオカメラ２４、マイクアレイ２６、およびスピーカ２８を含んで構成されている。
【００１６】
頭部アクチュエータ２０は、ロボット１０の頭部を鉛直方向と水平方向に回転動作させるための可動部である。また、体部アクチュエータ２２は、ロボット１０の胴体部を動作させるための可動部であり、胴体部の底部に平行して配置された独立して動作可能な２つの車輪等により構成される。
【００１７】
ビデオカメラ２４は、ロボット１０の周囲の画像を検出して画像データを出力するセンサであり、例えば、ロボット１０の頭部における目に相当する部分に設けられ、ＣＣＤやＣＭＯＳ素子などにより構成される。また、マイクアレイ２６は、ロボット１０の周囲の音声を検出して音声データを出力するセンサであり、例えば複数のマイクから構成される。スピーカ２８は、会議の参加者に対して音声を出力するためのものであり、例えば、ロボット１０の胴体部の前面に設けられる。
【００１８】
図１に戻り、端末１４は、遠隔地から会議に参加するテレワーカによる、ロボット１０を操作するためのコマンドや設定などの入力を受け付ける情報処理装置であり、パーソナルコンピュータや携帯情報端末等により構成される。また、端末１４はマイクを備えており、テレワーカの音声を集音する。
【００１９】
このような遠隔コミュニケーションシステムを用いたコミュニケーションの一例について説明する。例えば、端末１４で受け付けられたコマンドや集音された音声は、ネットワーク１２を介して、会議室に配置されたロボット１０に送信される。ロボット１０は、受信したコマンドに基づいて、頭部アクチュエータ２０や体部アクチュエータ２２を動作させる。また、ロボット１０は、受信した音声をスピーカー２８から出力する。さらに、ロボット１０は、マイクアレイ２６により会議室側の音声を集音するとともに、ビデオカメラ２４により会議室側の画像を撮像する。集音された音声と撮像された画像は、ネットワーク１２を介して、テレワーカ側の端末１４に送信され、テレワーカは会議室側の画像と音声を見聞きすることができる。
【００２０】
図３は、端末１４に表示される、テレワーカのためのユーザインターフェースの一例を示す図である。図３に示すように、端末１４の画面には、ロボットカメラ映像表示ウィンドウ３０、ロボット制御用操作ウィンドウ３２、および共有情報表示ウィンドウ３４が表示される。
【００２１】
ロボットカメラ映像表示ウィンドウ３０には、ネットワーク１２を介して送信されてくる、ロボット１０のビデオカメラ２４において撮像されたビデオ画像が表示される。
【００２２】
ロボット制御用操作ウィンドウ３２には、ロボット１０を制御するコマンドをネットワーク１２を介してロボット１０に送信するための各種ボタンが設けられている。例えば、テレワーカは、ロボット制御用操作ウィンドウ３２に表示されるボタンを押下することにより、ロボット１０の頭部アクチュエータ２０または体部アクチュエータ２２を制御するコマンドや、スピーカ２８のボリュームを制御するコマンドなどを送信することができる。なお、送信可能なコマンドは、上記の限りではなく他の種類のコマンドを送信することも可能である。このように、テレワーカは、ロボット制御用操作ウィンドウ３２を操作して、ネットワーク１２を介して接続されたロボット１０の制御を行うことができる。つまり、テレワーカは、ロボット１０の体や顔を会議に参加している特定の人の方向に向かせたり、会議に参加している人に対してロボット１０の首を振らせたりするなど、テレワーカの代わりにロボット１０に仕草を行わせることができる。
【００２３】
共有情報表示ウィンドウ３４には、会議室側の参加者とテレワーカとが共有するための情報が表示される。例えば、会議室側のプロジェクタスクリーンに表示されている情報がネットワーク１２を介して端末１４に送信され、この情報が共有情報表示ウィンドウ３４に表示されるようにすることができる。また、テレワーカが、端末１４内に保存されている情報を共有情報表示ウィンドウ３４に表示することにより、この情報がネットワーク１２を介して会議室側に送信され、会議室側のプロジェクタスクリーンに表示されるようにすることもできる。
【００２４】
図４は、ロボット１０の動作を制御する機能を含めた、ロボット１０の構成例を示す図である。ロボット１０は、上述の頭部アクチュエータ２０、体部アクチュエータ２２、ビデオカメラ２４、マイクアレイ２６、及びスピーカ２８に加え、動作を制御するための機能として、動作データ記録部４０、設定受付部４２、操作受付部４４、対話要求検出部４６、動作制御部４８、制御実績記録部５０、及びパラメータ変更部５２を含んで構成されている。
【００２５】
動作データ記録部４０には、ロボット１０の頭部アクチュエータ２０及び体部アクチュエータ２２等の可動部を複数の動作位置に動かすための動作データが記録される。例えば、動作データ記録部４０には、会議室側の人物やプロジェクタディスプレイなどの位置にロボット１０の頭部や胴体部を向けるための動作データが記録される。この動作データ記録部４０に格納された動作データを用いることにより、所望の人や、プロジェクタスクリーンに表示された映像の方向にロボット１０の頭部や胴体部を向けさせることが可能となる。つまり、ロボット１０に、所望の人や表示映像を注目していること等の意図を伝達するための身体動作を行わせることが可能となる。
【００２６】
設定受付部４２は、動作データ記録部４０に記録される動作データの設定を、ネットワーク１２を介して端末１４から受け付ける。図５は、テレワーカが端末１４を用いて動作データを設定する際のユーザインタフェースの一例を示す図である。図５に示す例では、ロボット１０により撮影された会議室側の画像が表示エリア７０に表示されている。そして、例えば、テレワーカが、マウスやタッチパッド等により、画面上のポインタ７２を人の顔や対象物の表示位置に動かして選択した後、登録ボタン７４を押下する。これにより、選択された人物や対象物に対応する位置を示すデータ、つまり、選択された人物や対象物の方向にロボット１０の頭部や胴体部を向けさせるための動作データが動作データ記録部４０に記録される。なお、設定受付部４２は、選択された人物や対象物に対して、各々を識別するための人物／対象物ＩＤ（識別子）を、自動的に、あるいはテレワーカからの入力により付与することができる。そして、設定受付部４２は、この人物／対象物ＩＤを動作データと対応付けて動作データ記録部４０に記録する。
【００２７】
操作受付部４４は、テレワーカの操作に応じてネットワーク１２を介して送信されてくる各種コマンドを受け付ける。
【００２８】
対話要求検出部４６は、ロボット１０に対する対話要求を検出するものであり、特徴データ記録部６０、検出部６２、および検出イベント出力部６４を含んで構成される。例えば、対話要求検出部４６は、ロボット１０の周囲にいる人がロボット１０に向かって話しかけたことを示す対話要求と、話しかけた音声の到来方向を検出する。なお、ロボット１０に対する対話要求とは、ロボット１０のみに対して話しかける場合に限られず、会議の参加者がロボット１０を含む複数の参加者に対して話しかける場合も含まれる。
【００２９】
特徴データ記録部６０には、会議の参加者の音声や画像の特徴を示す特徴データ（例えば特徴ベクトル）を記録することができる。この特徴データは、例えば、会議の開始前に、ビデオカメラ２４で参加者の顔を撮影したり、マイクアレイ２６で参加者の音声を取得することにより生成することができる。この場合、特徴データ記録部６０には、参加者の人物／対象物ＩＤと対応付けて特徴データを記録することが可能である。また、会議の参加者ではなく、人の音声や顔の一般的な特徴を示す特徴データが特徴データ記録部６０に記録されることとしてもよい。
【００３０】
検出部６２は、ビデオカメラ２４から出力される画像データや、マイクアレイ２６から出力される音声データに基づいて、ロボット１０に対する対話要求を検出する。また、検出部６２は、マイクアレイ２６を構成する複数のマイクへの音の到達時間の差を用いて、人の音声の到来方向を検出することができる。また、検出部６２は、ビデオカメラ２４から出力される画像データにより、ロボット１０に視線が向いている人の位置や方向を検出したり、人の顔の動きを検出したりすることができる。
【００３１】
さらに、検出部６２は、ビデオカメラ２４から出力される画像データやマイクアレイ２６から出力される音声データと、特徴データ記録部６０に記録されている特徴データとに基づいて、対話要求の検出の信頼度を算出する。例えば、検出部６２は、音声データや画像データから生成される特徴データと、特徴データ記録部６０に記録されている特徴データの類似度を、従来のパターン認識技術（例えば、線形判別分析）を用いて算出し、信頼度として用いることができる。なお、特徴データ記録部６０に、特徴データが人物／対象物ＩＤと対応付けて記録されている場合であれば、検出部６２は、検出された対話要求に対応する人物を示す人物／対象物ＩＤを特定することができる。
【００３２】
検出イベント出力部６４は、検出部６２によって検出された対話要求を示す検出イベント（検出データ）を出力する。検出イベントには、例えば、音声の到来方向や、ロボット１０に視線が向いている人の方向、人物／対象物ＩＤ等の対話要求の内容を示すデータに加えて、算出された信頼度が含まれる。
【００３３】
動作制御部４８は、動作データ記録部４０に記録されている動作データ、または、対話要求検出部４６から出力される検出イベントに応じて、ロボット１０の動作を制御する。例えば、動作制御部４８は、ネットワーク１２経由で送信されてくるコマンドに応じた動作データを動作データ記録部４０から読み出し、動作データに応じてロボット１０の動作を制御する。また、動作制御部４８は、対話要求検出部４６から、音声の到来方向が検出されたことを示す検出イベントを受信すると、信頼度が所定の閾値（所定レベル）より高い場合は、検出イベントに応じてロボット１０の動作を制御する。例えば、動作制御部４８は、ロボット１０の頭部または胴体部が音声の到来方向に向くように、頭部アクチュエータ２０や体部アクチュエータ２２を制御する。
【００３４】
また、動作制御部４８は、対話要求検出部４６が検出イベントを一定時間以上の間にわたって出力しない場合、あるいは検出イベントが出力された場合でも信頼度が低く一定時間以上の間にわたって対話要求の検出に応じた動作制御が行われない場合には、動作データ記録部４０に記録されている動作データを取り出してロボット１０の動作を制御する。このような制御を行うことにより、長時間に渡ってロボット１０が動作せずに静止状態になってしまうことを回避することができ、ロボット１０の存在感を表出することができる。また、検出イベントの信頼度が低い場合には、検出された対話要求に応じた動作が実行されないため、対話要求の誤った検出に伴うロボット１０の不自然な動作を回避することができる。
【００３５】
制御実績記録部５０には、動作制御部４８によって行われたロボット１０の動作制御の実績を示すデータが記録される。
【００３６】
パラメータ変更部５２は、動作制御部４８における動作制御用の各種パラメータを変更することができる。例えば、パラメータ変更部５２は、端末１４から出力されるパラメータを変更するためのコマンドをネットワーク１２を介して受信することにより、パラメータを変更することができる。なお、パラメータ変更部５２により変更可能なパラメータには、例えば、動作制御部４８にて検出イベントの信頼度を判定する際の閾値や、動作制御部４８において動作制御（アクション）を行う間隔が含まれる。なお、変更可能なパラメータはこれらに限られず、ロボット１０の動作速度等、ロボット１０の動作制御の振る舞いを変えるパラメータ全てが対象となる。
【００３７】
なお、動作データ記録部４０、制御実績記録部５０、および特徴データ記録部６０は、例えば、ロボット１０が備えるメモリを用いて構成することができる。また、設定受付部４２、操作受付部４４、動作制御部４８、パラメータ変更部５２、検出部６２、および検出イベント出力部６４は、例えば、ロボット１０が備えるプロセッサがメモリに格納されているプログラムを実行することにより実現することができる。
【００３８】
＝＝制御処理＝＝
次に、遠隔コミュニケーションシステムにおけるロボット１０の制御処理について説明する。
【００３９】
図６は、動作データ記録部４０に人物または対象物の位置を登録する処理のフローチャートである。例えば、図５に示した登録画面が端末１４に表示されることにより、設定受付部４２がこの処理を開始する。以下において、＄位置登録数、＄人物／対象物ＩＤは変数である。
【００４０】
まず、設定受付部４２は、＄位置登録数および＄人物／対象物ＩＤを、例えば０（ゼロ）に初期化する（Ｓ６０１）。そして、設定受付部４２は、設定受付部４２に対するイベントが到着するのを待機する。なお、設定受付部４２が受信するイベントには、終了要求イベントおよび登録ボタン押下イベントが含まれる。終了要求イベントとは、当該登録処理を終了させるためのイベントであり、例えば、端末１４において図５に示した登録画面が終了されることに応じて生成される。また、登録ボタン押下イベントとは、端末１４において図５に示した登録画面の登録ボタンが押下されることに応じて生成される。設定受付部４２は、終了要求イベントを受信しているかをチェックし（Ｓ６０２）、受信している場合（Ｓ６０２：Ｙ）は処理を終了する。終了要求イベントを受信していない場合（Ｓ６０２：Ｎ）、設定受付部４２は、登録ボタン押下イベントを受信しているかをチェックし（Ｓ６０３）、受信していない場合（Ｓ６０３：Ｎ）は終了要求イベントのチェック処理（Ｓ６０２）に戻る。
【００４１】
登録ボタン押下イベントを受信している場合（Ｓ６０３：Ｙ）、設定受付部４２は、ネットワーク１２を介して送信されてくるカーソル７２で選択された位置の座標に基づいて、画像中心座標から、選択された位置の座標までの変位量（Δｘ，Δｙ）を算出する（Ｓ
６０４）。ここで、画像中心座標は、ロボット１０の頭部が向いている方向の位置（ロボット頭部ｘ方向位置，ロボット頭部ｙ方向位置）を示すものである。
【００４２】
そこで、設定受付部４２は、カーソル７２で選択された、現在の＄人物／対象物ＩＤに対応する人物または対象物の位置（ｘ方向位置，ｙ方向位置）を示す動作データを、（ロボット頭部ｘ方向位置，ロボット頭部ｙ方向位置）に（Δｘ，Δｙ）を加算することによ
り生成し、＄人物／対象物ＩＤと対応付けて動作データ記録部４０に登録する（Ｓ６０５）。
【００４３】
その後、設定受付部４２は、＄位置登録数および＄人物／対象物ＩＤに１を加え（Ｓ６０６）、終了要求イベントが受信されるまで、上述の処理（Ｓ６０２〜Ｓ６０６）を繰り返し実行する。なお、＄位置登録数は、例えば、登録可能な人物または対象物の数を制限するためや、図５に示した位置登録画面の表示を制御するために用いることができる。例えば、＄位置登録数の値が“２”であれば、画面に表示されている「登録１」〜「登録４」のボタンのうち、「登録１」および「登録２」のボタンを選択不可能な状態とし、「登録３」および「登録４」のボタンを選択可能な状態とすることができる。なお、人物／対象物ＩＤを連番とする場合であれば、＄位置登録数を用いずに＄人物／対象物ＩＤにより同様の制御を行うことも可能である。
【００４４】
図７は、動作制御部４８によるロボット１０の動作制御処理の一例を示すフローチャートである。例えば、この処理は、ロボット１０が起動されることにより開始される。以下において、＄前回アクション実行時刻および＄前回イベントチェック時刻は変数であり、制御実績記録部５０に記録されている。また、＄アクション実行間隔および＄イベントチェック間隔は定数である。なお、＄アクション実行間隔および＄イベントチェック間隔は、パラメータ変更部５２を介して変更することが可能である。
【００４５】
まず、動作制御部４８は、＄前回アクション実行時刻および＄前回イベントチェック時刻を初期化する。具体的には、動作制御部４８は、＄前回アクション実行時刻に（現在時刻−＄アクション実行間隔）以前の時刻をセットし（Ｓ７０１）、＄前回イベントチェック時刻に（現在時刻−＄イベントチェック間隔）以前の時刻をセットする（Ｓ７０２）。
【００４６】
続いて、動作制御部４８は、イベントチェックを行うタイミングであるかどうかを確認する。具体的には、動作制御部４８は、（現在時刻−＄前回イベントチェック時刻）＞＄イベントチェック間隔であるかどうかを確認する（Ｓ７０３）。この条件が満たされない間（Ｓ７０３：Ｎ）、イベントチェックのタイミングを確認する処理（Ｓ７０３）が繰り返される。
【００４７】
イベントチェックを行うタイミングである場合（Ｓ７０３：Ｙ）、動作制御部４８は、＄前回イベントチェック時刻に現在時刻をセットし（Ｓ７０４）、イベントが到着しているかどうかをチェックする（Ｓ７０５）。なお、動作制御部４８が受信するイベントには、終了要求イベント、遠隔操作イベント、および検出イベントが含まれる。終了要求イベントとは、当該制御処理を終了させるためのイベントであり、例えば、ネットワーク１２経由もしくは直接的な操作によって、ロボット１０に対してシャットダウンが指示されることにより生成される。また、遠隔操作イベントは、テレワーカがロボット制御用操作ウィンドウ３２を操作することにより生成される。また、検出イベントは、対話要求検出部４６が対話要求を検出することにより生成される。
【００４８】
イベントが到着している場合（Ｓ７０５：Ｙ）、動作制御部４８は、終了要求イベントであるかを確認し（Ｓ７０６）、終了要求イベントである場合（Ｓ７０６：Ｙ）は処理を終了する。終了要求イベントでない場合（Ｓ７０６：Ｎ）、動作制御部４８は、遠隔操作イベントであるかを確認する（Ｓ７０７）。ここで、遠隔操作イベントでない場合（Ｓ７０７：Ｎ）、受信したイベントは検出イベントであり、動作制御部４８は、検出イベントに含まれる信頼度が所定の閾値より高いかどうかを確認する（Ｓ７０８）。検出イベントの信頼度が所定の閾値より高くない場合（Ｓ７０８：Ｎ）、イベントチェックのタイミングを確認する処理（Ｓ７０３）に戻る。
【００４９】
そして、動作制御部４８は、遠隔操作イベントを受信した場合（Ｓ７０７：Ｙ）、または、信頼度が所定の閾値より高い検出イベントを受信した場合（Ｓ７０８：Ｙ）、イベントの内容に応じて、ロボット１０のアクチュエータ制御等のアクションを実行する（Ｓ７０９）。具体的には、動作制御部４８は、イベントの内容に応じて、ロボット１０の頭部アクチュエータ２０や体部アクチュエータ２２を制御したり、ビデオカメラ２４のズームを調整したり、マイクアレイ２６を構成するマイクの感度を調整したり、スピーカ２８の音量を調整したりする。
【００５０】
例えば、検出イベントに、音声の到来方向またはロボット１０に視線が向いている人物の位置や方向が含まれる場合、動作制御部４８は、ロボット１０の頭部がその位置や方向に向くように、頭部アクチュエータ２０や体部アクチュエータ２２を制御する。また、例えば、検出イベントに人物／対象物ＩＤが含まれる場合、動作制御部４８は、その人物／対象物ＩＤに対応する位置を動作データ記録部４０から取得し、ロボット１０の頭部がその人物／対象物ＩＤに対応する人物または対象物の方向に向くように、頭部アクチュエータ２０や体部アクチュエータ２２を制御する。
【００５１】
その後、動作制御部４８は、＄前回アクション実行時刻に現在時刻をセットし（Ｓ７１０）、イベントチェックのタイミングを確認する処理（Ｓ７０３）に戻る。
【００５２】
また、イベントの到着をチェックした際に（Ｓ７０５）、イベントが到着していなかった場合（Ｓ７０５：Ｎ）、動作制御部４８は、何らかのアクションを行うタイミングであるかどうかを確認する。具体的には、動作制御部４８は、（現在時刻−＄前回アクション実行時刻）＞＄アクション実行間隔であるかどうかを確認する（Ｓ７１１）。この条件が満たされない場合、イベントチェックのタイミングを確認する処理（Ｓ７０３）に戻る。
【００５３】
何らかのアクションを行うタイミングである場合（Ｓ７１１：Ｙ）、動作制御部４８は、動作データ記録部４０に記録されている人物／対象物ＩＤをランダムに選択する（Ｓ７１２）。そして、動作制御部４８は、選択された人物／対象物ＩＤに対応する位置を動作データ記録部４０から取得し、ロボット１０の頭部がその人物／対象物ＩＤに対応する人物または対象物の方向に向くように、頭部アクチュエータ２０や体部アクチュエータ２２を制御する（Ｓ７１３）。
【００５４】
その後、動作制御部４８は、＄前回アクション実行時刻に現在時刻をセットし（Ｓ７１０）、イベントチェックのタイミングを確認する処理（Ｓ７０３）に戻る。
【００５５】
ここで、図７の処理では、検出イベントの信頼度が閾値より高くない場合、次のアクション実行タイミングまでに、信頼度が閾値より高い検出イベントが到着しなければ、動作データ記録部４０に記録されている動作データに基づいて、ロボット１０が制御される。つまり、検出イベントの信頼度が閾値より高くない場合、結果的に、動作データ記録部４０に記録されている動作データに基づいてロボット１０の頭部アクチュエータ２０や体部アクチュエータ２２が制御されることとなる。なお、図７の処理において、検出イベントの信頼度が閾値より高くない場合に（Ｓ７０８：Ｎ）、イベントチェック間隔をチェックする処理（Ｓ７０３）に戻らずに、動作データ記録部４０に記録されている動作データに基づく処理（Ｓ７１１−Ｓ７１２）に直接遷移することとしてもよい。
【００５６】
上記処理によれば、検出イベントに含まれる信頼度が所定の閾値より高い場合は、検出イベントに応じてロボット１０の動作が制御される。さらに、検出イベントまたは遠隔操作イベントに応じたアクションが所定の時間以上実行されない場合、動作データ記録部４０に記録されている動作データに基づいて、ロボット１０の動作が制御される。
【００５７】
これにより、検出イベントの信頼度が低い場合には、検出された対話要求に応じた動作が実行されないため、対話要求の誤った検出に伴うロボット１０の不自然な動作を回避することができる。さらに、長時間に渡ってロボット１０が動作せずに静止状態になってしまうことを回避することができ、ロボット１０の存在感を表出することができる。つまり、検出イベントに基づいた即応的な自律動作制御と、動作データ記録部４０に記録されている動作データに基づいた定型的で安定した自律動作制御との組み合わせにより、ロボット１０の自律動作における不自然さを軽減させることができる。
【００５８】
また、本実施形態では、パラメータ変更部５２によって、動作制御部４８の各種パラメータを調整することにより、ロボット１０の自律動作における不自然さを軽減させることもできる。例えば、雑音が多く認識イベントが信頼出来ない場合には、検出イベントの信頼度を判定する際の閾値を高く設定することにより、誤った検出イベントに対応したロボット１０の動作を低減することができる。また、例えば、アクション実行間隔を定期的に変更することで、ロボット１０の動作に揺らぎを生じさせ、より自然なロボット動作を実現することが可能になる。なお、パラメータ変更部５２は、ネットワーク１２を介してパラメータを変更するコマンドを受信することなく、検出イベントの信頼度の統計値や所定の規則に基づいてパラメータを変更することとしてもよい。
【００５９】
なお、本実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更／改良され得るととともに、本発明にはその等価物も含まれる。
【００６０】
例えば、動作データ記録部４０には、人や物の特定の動作（ジェスチャー）に応じてロボット１０を動作させるための動作データを記録させることも可能である。この場合、動作データ記録部４０には、動作を識別する動作識別子と対応付けて動作データを記録しておくことができる。そして、検出部６２が、ビデオカメラ２４から出力される画像データに基づいて所定の動作を検出すると、検出イベント出力部６４が、検出した動作に対応する動作識別子を検出データに含めて出力する。動作制御部４８は、検出データに含まれる動作識別子に対応する動作データを動作データ記録部４０から取得し、取得した動作データに基づいてロボット１０の動作を制御することができる。
【００６１】
また、例えば、本実施形態では、アクション実行間隔を監視することにより、動作データ記録部４０に記録された動作データに応じた動作の回数と、検出イベントに応じた動作の回数とを制御したが、各動作の回数の制御方法はこれに限られない。例えば、動作制御部４８は、動作データ記録部４０に記録されている動作データに応じた動作の単位時間当たりの実行数と、検出イベントに応じた動作の単位時間あたりの実行数とを制御実績記録部５０に記録しておくことにより、単位時間あたりのロボット１０の動作の総数をほぼ一定に制御することができる。例えば、動作制御部４８は、検出イベントに応じた動作の単位時間あたりの実行数が多い場合は、動作データ記録部４０に記録されている動作データに応じた動作の単位時間あたりの実行数を減らし、逆に、検出イベントに応じた動作の単位時間あたりの実行数が少ない場合は、動作データ記録部４０に記録されている動作データに応じた動作の単位時間あたりの実行数を増加させることとしてもよい。
【００６２】
前述の各実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には
限られない。
【００６３】
（付記１）可動部を有するロボットの制御方法であって、センサから出力される音声データまたは画像データに基づいて、前記ロボットに対する対話要求を検出し、前記検出された対話要求を示す検出データに前記検出の信頼度を含めて出力し、前記信頼度が所定レベルより高い場合は、前記検出データに基づいて前記可動部を動作させ、前記信頼度が前記所定レベルより高くない場合は、予め登録された動作データに基づいて前記可動部を動作させる、ロボットの制御方法。
【００６４】
（付記２）付記１に記載のロボットの制御方法であって、前記ロボットは、前記可動部の複数の動作位置に対応する複数の前記動作データが記録される動作データ記録部を含み、前記信頼度が前記所定レベルより高くない場合は、前記動作データ記録部に記録されている前記複数の動作データのうちの少なくとも１つの動作データに基づいて、前記可動部を動作させる、ロボットの制御方法。
【００６５】
（付記３）付記１または２に記載のロボットの制御方法であって、前記検出データに基づく前記可動部の単位時間あたりの動作回数の減少に応じて、前記動作データに基づく前記可動部の前記単位時間あたりの動作回数を増加させる、ロボットの制御方法。
【００６６】
（付記４）付記１〜３の何れか一つに記載のロボットの制御方法であって、前記センサから出力される前記音声データに基づいて、音声の到来方向を検出し、前記検出データに前記信頼度および前記音声の到来方向を含めて出力し、前記信頼度が前記所定レベルより高い場合は、前記検出データに含まれる前記音声の到来方向に前記可動部を動作させる、ロボットの制御方法。
【００６７】
（付記５）付記１〜４の何れか一つに記載のロボットの制御方法であって、前記センサから出力される前記画像データに基づいて、前記ロボットに視線が向いている人物の位置または方向を検出し、前記検出データに前記信頼度および前記人物の方向を含めて出力し、前記信頼度が前記所定レベルより高い場合は、前記検出データに含まれる前記人物の方向に前記可動部を動作させる、ロボットの制御方法。
【００６８】
（付記６）付記２〜５の何れか一つに記載のロボットの制御方法であって、前記動作データは、前記ロボットに対する動作を識別する動作識別子と対応付けられて前記動作データ記録部に記録され、前記センサから出力される前記画像データに基づいて、所定動作による前記対話要求を検出し、前記検出データに、前記信頼度および検出された前記所定動作に対応する前記動作識別子を含めて出力し、前記信頼度が前記所定レベルより高い場合は、前記動作データ記録部に記録されている、前記検出データに含まれる前記動作識別子に対応する前記動作データに基づいて、前記可動部を動作させる、ロボットの制御方法。
【００６９】
（付記７）付記１〜６の何れか一つに記載のロボットの制御方法であって、前記ロボットは、音声または画像の特徴を示す特徴データが記録される特徴データ記録部を含み、前記センサから出力される前記音声データまたは前記画像データと、前記特徴データ記録部に記録されている前記特徴データとの類似度に基づいて、前記信頼度を算出する、ロボットの制御方法。
【００７０】
（付記８）付記２〜６の何れか一つに記載のロボットの制御方法であって、前記ロボットは、複数の人物の音声の特徴を示す複数の特徴データが、人物を特定する人物識別子と対応付けられて記録される特徴データ記録部を含み、前記動作データは、前記人物識別子と対応付けられて前記動作データ記録部に記録され、前記センサから出力される前記音声データと、前記特徴データ記録部に記録されている前記特徴データとに基づいて、前記音声データに対応する前記人物識別子を検出し、前記検出データに、前記信頼度および検出された前記人物識別子を含めて出力し、前記信頼度が前記所定レベルより高い場合は、前記動作データ記録部に記録されている、前記検出データに含まれる前記人物識別子に対応する前記動作データに基づいて、前記可動部を動作させる、ロボットの制御方法。
【００７１】
（付記９）可動部を有するロボットに、センサから出力される音声データまたは画像データに基づいて、前記ロボットに対する対話要求を検出する機能と、前記検出された対話要求を示す検出データに前記検出の信頼度を含めて出力する機能と、前記信頼度が所定レベルより高い場合は、前記検出データに基づいて前記可動部を動作させる機能と、前記信頼度が前記所定レベルより高くない場合は、予め登録された動作データに基づいて前記可動部を動作させる機能と、を実現させるためのプログラム。
【００７２】
（付記１０）可動部と、音声または画像を検出して音声データまたは画像データを出力するセンサと、前記音声データまたは前記画像データに基づいて、対話要求を検出する対話要求検出部と、前記検出された対話要求を示す検出データに前記検出の信頼度を含めて出力する検出データ出力部と、前記信頼度が所定レベルより高い場合は、前記検出データに基づいて前記可動部を動作させ、前記信頼度が前記所定レベルより高くない場合は、予め登録された動作データに基づいて前記可動部を動作させる動作制御部と、を備えるロボット。
【符号の説明】
【００７３】
１０  ロボット
１２  ネットワーク
１４  端末
２０  頭部アクチュエータ
２２  体部アクチュエータ
２４  ビデオカメラ
２６  マイクアレイ
２８  スピーカ
３０  ロボットカメラ映像表示ウィンドウ
３２  ロボット制御用操作ウィンドウ
３４  共有情報表示ウィンドウ
４０  動作データ記録部
４２  設定受付部
４４  操作受付部
４６  対話要求検出部
４８  動作制御部
５０  制御実績記録部
５２  パラメータ変更部
【図１】
2012040655.tif 000003
【図２】
2012040655.tif 000004
【図３】
2012040655.tif 000005
【図４】
2012040655.tif 000006
【図５】
2012040655.tif 000007
【図６】
2012040655.tif 000008
【図７】
2012040655.tif 000009