(57)【要約】【課題】ロボットの応答遅延時のインタラクションに発生する違和感を抑制すること。【解決手段】コミュニケーションロボット１は、コミュニケーションロボット１に対して入力された情報に基づいて、情報が入力されたタイミングからコミュニケーションロボット１により応答を出力するまでの応答遅延時間長を予測する予測部１３と、予測された応答遅延時間長に対応するコミュニケーションロボット１の動作を決定する決定部１４と、決定した動作をコミュニケーションロボット１に実行させる動作制御部１５と、を有する。【選択図】図３
2020049596.tif 000002
【特許請求の範囲】
【請求項１】
コミュニケーションロボットに対して入力された情報に基づいて、前記情報が入力されたタイミングから前記コミュニケーションロボットにより応答を出力するまでの応答遅延時間長を予測する予測部と、
予測された応答遅延時間長に対応する前記コミュニケーションロボットの動作を決定する決定部と、
決定した前記動作を前記コミュニケーションロボットに実行させる動作制御部と、
を有することを特徴とするコミュニケーションロボット。
【請求項２】
前記決定部は、前記応答遅延時間長の予測値が長いほど前記コミュニケーションロボットのシルエットの変化が大きい動作を実行対象として決定することを特徴とする請求項１に記載のコミュニケーションロボット。
【請求項３】
前記決定部は、前記予測された応答遅延時間長の経過後に、前記コミュニケーションロボットにより応答が出力できない場合、決定された動作よりも短時間の動作を更に実行対象として決定することを特徴とする請求項１または２に記載のコミュニケーションロボット。
【請求項４】
前記予測部は、前記情報の量および応答遅延時間長の予測値の対応関係が定義された対応関係データを参照して、前記コミュニケーションロボットに入力される情報の量に対応する前記応答遅延時間長の予測値を予測に用いることを特徴とする請求項１、２または３に記載のコミュニケーションロボット。
【請求項５】
前記対応関係データに含まれる前記応答遅延時間長の予測値を前記応答遅延時間長の実測値に基づいて更新する更新部をさらに有することを特徴とする請求項４に記載のコミュニケーションロボット。
【請求項６】
前記予測部により予測された応答遅延時間長に基づいて第１の動作区間および第２の動作区間を設定する設定部をさらに有し、
前記決定部は、前記第１の動作区間の区間長に対応する動作を前記第１の動作区間で実行することを決定すると共に、前記コミュニケーションロボットと前記情報の入力を行う対象者との目線が合った状態で行われる動作を前記第２の動作区間で実行することを決定することを特徴とする請求項１〜５のいずれか１つに記載のコミュニケーションロボット。
【請求項７】
コミュニケーションロボットに対して入力された情報に基づいて、前記情報が入力されたタイミングから前記コミュニケーションロボットにより応答を出力するまでの応答遅延時間長を予測し、
予測された応答遅延時間長に対応する前記コミュニケーションロボットの動作を決定し、
決定した前記動作を前記コミュニケーションロボットに実行させる、
処理をコンピュータが実行することを特徴とする制御方法。
【請求項８】
コミュニケーションロボットに対して入力された情報に基づいて、前記情報が入力されたタイミングから前記コミュニケーションロボットにより応答を出力するまでの応答遅延時間長を予測し、
予測された応答遅延時間長に対応する動作を決定し、
決定した前記動作を前記コミュニケーションロボットに実行させる、
処理をコンピュータに実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コミュニケーションロボット、制御方法及び制御プログラムに関する。
【背景技術】
【０００２】
プレゼンテーションや展示、フロント業務等の様々な現場で対人のコミュニケーションを実現するコミュニケーションロボットの普及が進んでいる。例えば、コミュニケーションロボットには、音声認識や機械翻訳、音声感情分析などの音声処理の他、顔認識や表情認識などの画像処理に関するＡＩ（Artificial  Intelligence）技術を活用したプラットフォームが導入される。
【０００３】
このようにコミュニケーションロボットが音声処理や画像処理などの情報処理を実行する場合、コミュニケーションロボットに情報が入力されてからコミュニケーションロボットが処理結果を応答するまでに時間差が応答遅延時間として発生する。さらに、コミュニケーションロボットに接続された外部のコンピュータにより情報処理が実行される場合、ネットワークの伝送遅延が加わる分、コミュニケーションロボットの内部で情報処理が実行される場合よりも応答遅延時間が拡大する。
【０００４】
ところで、音声認識機能を備えた車載ナビゲーション装置等の車載システムへの適用を想定した技術として、応答遅延時間に応じた時間長のフィラー、例えば「ええと」や「あの」などのつなぎ言葉を発話する音声認識端末装置が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−８８２７６号公報
【特許文献２】特開２０１４−１１０５５８号公報
【特許文献３】特開２０１５−１３５４２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の音声認識端末装置は、あくまで音声ＵＩ（User  Interface）の機能を提供するものに過ぎず、対人のコミュニケーションを実現するコミュニケーションロボットへの適用はそもそも想定されていない。
【０００７】
１つの側面では、本発明は、コミュニケーションロボットに処理の待ち時間中にフィラー動作を行わせつつ、処理結果を出力する際には、とるべき姿勢で処理結果を出力できるようにするコミュニケーションロボット、制御方法及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
一態様では、コミュニケーションロボットは、コミュニケーションロボットに対して入力された情報に基づいて、前記情報が入力されたタイミングから前記コミュニケーションロボットにより応答を出力するまでの応答遅延時間長を予測する予測部と、予測された応答遅延時間長に対応する前記コミュニケーションロボットの動作を決定する決定部と、決定した前記動作を前記コミュニケーションロボットに実行させる動作制御部と、を有する。
【発明の効果】
【０００９】
一実施形態によれば、ロボットの応答遅延中の動作に発生する不自然さを抑制できる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１に係るコミュニケーションロボットのユースケースの一例を示す図である。
【図２】図２は、応答遅延時間の一例を示す図である。
【図３】図３は、実施例１に係るコミュニケーションロボット１の機能的構成の一例を示すブロック図である。
【図４】図４は、頭部３の駆動例を示す図である。
【図５】図５は、胴部５の駆動例を示す図である。
【図６】図６は、腕部７の駆動例を示す図である。
【図７】図７は、ルックアップテーブル１３Ａの一例を示す図である。
【図８】図８は、ルックアップテーブル１４Ａの一例を示す図である。
【図９】図９は、実施例１に係るフィラー動作の制御処理の手順を示すフローチャートである。
【図１０】図１０は、実施例２に係るコミュニケーションロボット２の機能的構成の一例を示すブロック図である。
【図１１】図１１は、動作区間の設定方法の一例を示す図である。
【図１２】図１２は、動作と違和感の有無の対応関係の一例を示す図である。
【図１３】図１３は、各動作区間で実行が許可される動作の一例を示す図である。
【図１４】図１４は、実施例２に係るフィラー動作の制御処理の手順を示すフローチャートである。
【図１５】図１５は、実施例３に係るコミュニケーションロボット４の機能的構成の一例を示すブロック図である。
【図１６】図１６は、実施例１〜実施例３に係る制御プログラムを実行するコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して本願に係るコミュニケーションロボット、制御方法及び制御プログラムについて説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１２】
［ユースケースの一例］
図１は、実施例１に係るコミュニケーションロボットのユースケースの一例を示す図である。図１には、ユースケースのあくまで一例として、多言語のコミュニケーションを実現する側面から、音声認識や機械翻訳を併用することにより、対象者Ｕ１の発話を母国語から外国語へ翻訳して読み上げる音声ＵＩの機能を提供するコミュニケーションロボット１を示す。
【００１３】
［応答遅延時間］
ここで、コミュニケーションロボット１に対する発話が対象者Ｕ１により行われてからその発話が目的とする外国語でコミュニケーションロボット１により読み上げられるまでの間には、応答遅延時間が発生する。このような応答遅延時間が発生する一因として、音声認識や機械翻訳等の音声処理が実行されることが挙げられる。
【００１４】
図２は、応答遅延時間の一例を示す図である。図２には、コミュニケーションロボット１で発生するイベントが時系列に示されている。図２に示すように、コミュニケーションロボット１は、対象者Ｕ１の発話を待機し（ステップＳ１）、発話の開始を検出してから当該発話の終了を検出する（ステップＳ２及びステップＳ３）。続いて、コミュニケーションロボット１は、ステップＳ２及びステップＳ３で検出された発話区間の音声データの翻訳を開始する（ステップＳ４）。そして、コミュニケーションロボット１は、発話区間の音声データの翻訳が終了すると（ステップＳ５）、対象者Ｕ１の発話が目的とする外国語に翻訳された合成音声の再生を開始し（ステップＳ６）、その後、再生が終了する（ステップＳ７）。
【００１５】
これら一連のイベントにおいて、ステップＳ３で発話の終了が検出された時点からステップＳ６で翻訳後の合成音声の再生が開始される時点までの応答遅延時間Ｔは、対象者Ｕ１にとっては空白の期間、いわゆる待ち時間となる。なお、ここでは、コミュニケーションロボット１の内部で音声処理が実行される場合を例示したが、次のような場合、さらに応答遅延時間が拡大する。例えば、コミュニケーションロボット１に接続された外部のコンピュータにより音声処理がクラウドサービス等として実行される場合、ネットワークの伝送遅延が加わる分、さらに応答遅延時間が拡大する。
【００１６】
［課題の一側面］
このような応答遅延時間Ｔに直面して、コミュニケーションロボット１が停止していたのでは、対象者Ｕ１およびコミュニケーションロボット１の間のインタラクションの親和性が損なわれる。
【００１７】
そうであるからと言って、背景技術の欄で挙げた音声認識端末装置のように、コミュニケーションロボット１につなぎ言葉を発話させたとしても、依然として、動作に不自然さが残る。あくまで一例として、コミュニケーションロボット１に情報が入力されたタイミングからコミュニケーションロボット１が応答を出力するまでの間につなぎ言葉の発話が終了することによりつなぎ言葉が途切れることがある。この場合、つなぎ言葉が途切れたタイミングからコミュニケーションロボット１が応答を出力するまでに生じる時間差が継ぎ目となって不自然に感じられる場合がある。
【００１８】
また、背景技術の欄で挙げた音声認識端末装置以外の文献に記載の技術を用いて、応答遅延時のインタラクションに発生する違和感を抑制することも困難である。このような文献の一例として、相手の状態に応じて適切な模倣動作や同調動作のような協力的動作をコミュニケーションロボットに実行させる動作生成システムがある。
【００１９】
上記の動作生成システムでは、次のような課題が設定されている。すなわち、「人間１４が何かを行うときに、ロボット１２がこの種の模倣動作や同調動作（たとえば、人間１４が指差しをするときに、ロボット１２の頭がすぐに同じ方向を向く）を即座に実行するならば、明らかに不自然である。」という課題が設定されている。このような課題設定の下、上記の動作精製システムでは、所定の反応の遅延時間経過後に協力的動作をコミュニケーションロボットに行わせる。このように、上記の文献では、「反応の遅延時間」という用語が含まれているが、その意味合いが上記の「応答遅延時間」との間で根本的に異なる。
【００２０】
すなわち、上記の動作生成システムが「反応の遅延時間」は、コミュニケーションロボットが即座に動作を行うことができる状態であるにもかかわらず、人の反応に合わせてあえて待機することを目的とするものである。このため、上記の「反応の遅延時間」には、コミュニケーションロボット１が音声処理等の情報処理を完了して応答できる状態になるまでインタラクションに違和感がない雰囲気をつなぐというが動機付けが入りこむ余地がない。
【００２１】
このような動機付けがない「反応の遅延時間」は、上記の「応答遅延時間Ｔ」に対応し得ない。それ故、人が不自然に感じない反応時間よりも応答遅延時間が長くなる状況が一例として発生しうる。このよう状況下で上記の「反応の遅延時間」がコミュニケーションロボットの動作の制御に用いられたとしても、音声処理等が完了する前に動作が途切れるので、ロボットの応答遅延時のインタラクションに違和感が発生する。
【００２２】
［課題解決のアプローチの一側面］
そこで、本実施例に係るコミュニケーションロボット１は、コミュニケーションロボット１に対する情報入力完了から応答の再生開始までの応答遅延時間を予測し、予測された応答遅延時間に対応する動作の実行を決定する。これによって、コミュニケーションロボット１が音声処理等の情報処理を完了して応答できる状態になるまでインタラクションに違和感がない雰囲気をつなげることができる。この際、予測された応答遅延時間に対応する動作がコミュニケーションロボット１により行われるので、コミュニケーションロボット１の動作が終了するタイミングと、コミュニケーションロボット１が応答を出力するタイミングとの時間差を抑えることができる。このため、コミュニケーションロボット１の動作と、コミュニケーションロボット１の応答出力とをシームレスに近付けることができる結果、タイミングの時間差から生じる不自然さを抑制できる。したがって、本実施例に係るコミュニケーションロボット１によれば、ロボットの応答遅延時間中のインタラクション（挙動）に発生する違和感を抑制することが可能になる。
【００２３】
［コミュニケーションロボット１の構成］
図３は、実施例１に係るコミュニケーションロボット１の機能的構成の一例を示すブロック図である。図３に示すコミュニケーションロボット１は、所定のネットワークを介して、音声認識や機械翻訳、音声感情分析などの音声処理の他、顔認識や表情認識などの画像処理などをバックエンドで実行するサーバ装置５０と接続される。このようにフロントエンドとして機能するコミュニケーションロボット１がサーバ装置５０と接続されることにより、一例として、各種の音声処理や各種の画像処理がクラウドサービス等を通じて提供される。
【００２４】
図３に示すように、コミュニケーションロボット１は、頭部３、胴部５、右腕部７Ｒ、左腕部７Ｌ、音声入力部９Ａ、音声出力部９Ｂと、通信部９Ｃと、モータ９Ｍと、制御部１０とを有する。なお、図３に示す機能部は、あくまで例示であり、コミュニケーションロボット１の機能的構成が図３に示す例以外の機能的構成を有することを妨げない。
【００２５】
図３に示すコミュニケーションロボット１では、制御部１０が出力する制御信号に従ってモータ９Ｍが動力を発生させることにより、頭部３、胴部５、右腕部７Ｒおよび左腕部７Ｌを駆動させることができる。
【００２６】
頭部３は、モータ９Ｍの動力によって頭部３を駆動させるアクチュエータ３１と、光を点灯または点滅する発光部３２とを有する。このうち、発光部３２は、コミュニケーションロボット１の感情表現に用いることができる。例えば、発光部３２は、喜怒哀楽の感情ごとに当該感情に対応する色で点灯または点滅することにより、コミュニケーションロボット１の喜怒哀楽を表現することができる。
【００２７】
図４は、頭部３の駆動例を示す図である。例えば、図４の上段に示すように、Ｘ軸回りのトルクを発生させる制御信号をモータ９Ｍに出力して頭部３のアクチュエータ３１を駆動することにより、頭部３をチルト方向に回転させることができる。このように左右のＸ軸を回転軸として頭部３を下方向および上方向に回転駆動させることにより、頷き動作等を行うことができる。また、図４の中段に示すように、Ｙ軸回りのトルクを発生させる制御信号をモータ９Ｍに出力して頭部３のアクチュエータ３１を駆動させることにより、頭部３をパン方向に回転させることができる。このように上下のＹ軸を回転軸として頭部３を左方向および右方向に回転駆動させることにより、首振り動作等を行うことができる。さらに、また、図４の下段に示すように、Ｚ軸回りのトルクを発生させる制御信号をモータ９Ｍに出力して頭部３のアクチュエータ３１を駆動させることにより、頭部３をロール方向に回転させることができる。このように頭部３を前後のＺ軸回りに回転駆動させることにより、首傾げ動作等を行うことができる。
【００２８】
胴部５は、モータ９Ｍの動力によって胴部５を駆動させるアクチュエータ５１を有する。図５は、胴部５の駆動例を示す図である。例えば、図５の上段に示すように、Ｘ軸回りのトルクを発生させる制御信号をモータ９Ｍに出力して胴部５のアクチュエータ５１を駆動することにより、胴部５をチルト方向に回転させることができる。このように左右のＸ軸を回転軸として胴部５を前方向および後方向に回転駆動させることにより、お辞儀動作や仰け反り動作などを行うことができる。また、図５の下段に示すように、Ｙ軸回りのトルクを発生させる制御信号をモータ９Ｍに出力して胴部５のアクチュエータ５１を駆動することにより、胴部５をパン方向に回転させることができる。このように上下のＹ軸を回転軸として胴部５を左方向および右方向に回転駆動させることにより、胴ひねり動作等を行うことができる。さらに、また、図５の下段に示すように、Ｚ軸回りのトルクを発生させる制御信号をモータ９Ｍに出力して胴部５のアクチュエータ５１を駆動させることにより、胴部５をロール方向に回転させることができる。このように胴部５を前後のＺ軸回りに回転駆動させることにより、胴部５を左方に倒れる動作等を行うことができる。
【００２９】
右腕部７Ｒおよび左腕部７Ｌは、モータ９Ｍの動力によって右腕部７Ｒまたは左腕部７Ｌを駆動させるアクチュエータ７１Ｒ及びアクチュエータ７１Ｌと、光を点灯または点滅する発光部７２Ｒおよび発光部７２Ｌとを有する。このうち、発光部７２Ｒおよび発光部７２Ｌは、右腕部７Ｒおよび左腕部７Ｌの先端部に設けることにより、方向指示器として機能させることができる。例えば、発光部７２Ｒを点灯することにより、右腕部７Ｒが指す方向に視線を誘導することができる。また、発光部７２Ｌを点灯することにより、左腕部７Ｌが指す方向に視線を誘導することができる。
【００３０】
図６は、腕部７の駆動例を示す図である。例えば、図６に示すように、Ｘ軸回りのトルクを発生させる制御信号をモータ９Ｍに出力して右腕部７Ｒのアクチュエータ７１Ｒを駆動することにより、右腕部７Ｒを上下方向に回転させることができる。このように左右のＸ軸を回転軸として右腕部７Ｒを下方向および上方向に回転駆動させることにより、右腕の振り上げ動作や振り下げ動作などを行うことができる。ここで、図６には、右腕部７Ｒの駆動例を抜粋して示したが、左腕部７Ｌについてもアクチュエータ７１Ｌを駆動することにより、左腕部７Ｌを上下方向に回転させることができ、左腕の振り上げ動作や振り下げ動作などを行うことができる。これら右腕および左腕を連動させることにより、例えば、気を付けの姿勢や前にならえの姿勢をとらせることもできる。
【００３１】
音声入力部９Ａは、音信号を入力する機能部である。
【００３２】
一実施形態として、音声入力部９Ａは、音を電気信号に変換する１または複数のマイクロフォン等により実装することができる。例えば、音声入力部９Ａは、マイクロフォンを介して音を採取することにより得られたアナログ信号をデジタル信号へ変換した上で音声データとして音声処理部１１へ入力する。
【００３３】
音声出力部９Ｂは、各種の音声を出力する機能部である。
【００３４】
一実施形態として、音声出力部９Ｂは、１つまたは複数のスピーカを含むスピーカユニットとして実装することができる。例えば、音声出力部９Ｂは、制御部１０からの指示にしたがって、プレゼンテーションやナビゲーションに関するメッセージを読み上げる合成音声等を出力することができる。
【００３５】
制御部１０は、コミュニケーションロボット１の全体制御を行う処理部である。
【００３６】
一実施形態として、制御部１０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などのハードウェアプロセッサにより実装することができる。ここでは、プロセッサの一例として、ＣＰＵやＭＰＵを例示したが、汎用型および特化型を問わず、任意のプロセッサ、例えばＤＳＰ（Digital  Signal  Processor）やＧＰＵ（Graphics  Processing  Unit）などにより実装することができる。この他、制御部１０は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによって実現されることとしてもかまわない。
【００３７】
制御部１０は、図示しない主記憶装置として実装されるＤＲＡＭ（Dynamic  Random  Access  Memory）などのＲＡＭのワークエリア上に、コミュニケーションロボット１を制御する制御プログラムを展開することにより、下記の処理部を仮想的に実現する。
【００３８】
制御部１０は、図３に示すように、音声処理部１１と、伝送処理部１２と、予測部１３と、決定部１４と、動作制御部１５とを有する。
【００３９】
音声処理部１１は、音声データを取得する処理部である。
【００４０】
一実施形態として、音声処理部１１は、音声入力部９Ａから音声データを取得する。ここで音声入力部９Ａから取得される音声データは、ストリーム形式で入力されることとしてもよいし、ファイル形式で入力されることとしてもかまわない。このように取得される音声データには、各種の音声処理を実行することができる。
【００４１】
このような音声処理の一例として、音声処理部１１は、音声データから発話区間を検出することができる。例えば、音声処理部１１は、音声データの波形の振幅および零交差に基づいて発話開始および発話終了を検出することとしてもよいし、音声データのフレームごとにＧＭＭ（Gaussian  mixture  model）にしたがって音声の尤度および非音声の尤度を算出してこれらの尤度の比から発話開始および発話終了を検出することもできる。
【００４２】
この他、音声処理部１１は、音声データから検出された発話区間にワードスポッティングを始めとする音声認識を実行することもできる。例えば、音声処理部１１は、発話区間の音声データを所定の言語モデルや所定の音素モデルと照合することにより、当該音声データをテキストへ変換する。
【００４３】
なお、ここでは、コミュニケーションロボット１が発話区間の検出や発話区間の音声認識を実行する例を挙げたが、必ずしもコミュニケーションロボット１が発話区間の検出や発話区間の音声認識を実行せずともかまわない。例えば、コミュニケーションロボット１に接続されたサーバ装置５０が発話区間の検出や発話区間の音声認識を実行することとしてもかまわない。
【００４４】
伝送処理部１２は、外部装置にデータを伝送する処理部である。
【００４５】
１つの側面として、伝送処理部１２は、音声処理部１１により発話区間に対する音声認識が実行された場合、音声認識結果として得られたテキストの翻訳依頼をサーバ装置５０に伝送する。この翻訳依頼が伝送されたサーバ装置５０では、コミュニケーションロボット１から伝送されたテキストに機械翻訳を実行することにより、対象者Ｕ１の発話に対応するテキストを母国語から外国語へ翻訳する。このように母国語から外国語へ翻訳されたテキストがサーバ装置５０からコミュニケーションロボット１へ応答される。
【００４６】
なお、ここでは、あくまで一例として、テキストの翻訳がサーバ装置５０により実行される例を挙げたが、テキストの翻訳もコミュニケーションロボット１により実行されることとしてもかまわない。
【００４７】
予測部１３は、コミュニケーションロボット１に入力される情報量に基づいて応答遅延時間を予測する処理部である。
【００４８】
一実施形態として、予測部１３は、音声処理部１１により検出された発話区間の時間長から応答遅延時間を予測する。以下、発話区間の時間長のことを「発話時間」と記載する場合がある。例えば、予測部１３は、発話時間と応答遅延時間Ｔの対応関係が定義されたルックアップテーブル１３Ａを参照して、音声処理部１１により検出された発話時間に対応する値を応答遅延時間Ｔとして予測することができる。図７は、ルックアップテーブル１３Ａの一例を示す図である。図７に示すルックアップテーブル１３Ａによれば、発話時間が０秒以上０．５秒未満の範囲である場合、応答遅延時間が０．６秒と予測される。また、発話時間が０．５秒以上１．０秒未満の範囲である場合、応答遅延時間が１．０秒と予測される。また、発話時間が１．０秒以上１．５秒未満の範囲である場合、応答遅延時間が１．６秒と予測される。また、発話時間が１．５秒以上２．０秒未満の範囲である場合、応答遅延時間が２．５秒と予測される。
【００４９】
このように、ルックアップテーブル１３Ａには、発話時間が短くなるにしたがって短い応答遅延時間Ｔが予測される一方で、発話時間が長くなるにしたがって長い応答遅延時間Ｔが予測される。このような応答遅延時間Ｔを定義するのは、発話時間が長くなるにつれて翻訳処理、例えば形態素解析や機械翻訳などの所要時間が長くなることが一因にある。さらに、発話時間が長くなるにつれてテキストのサイズが大きくなることから、ネットワークの伝送遅延も大きくなることも一因にある。
【００５０】
なお、ここでは、あくまで一例としてルックアップテーブル１３Ａを用いる場合を例示したが、発話時間が長くなるにしたがって長い応答遅延時間Ｔを導出する関数を用いて、発話時間に対応する応答遅延時間Ｔを算出することとしてもかまわない。例えば、応答遅延時間Ｔを導出する関数の一例として、発話時間を「ｘ」としたとき、Ｔ＝１．３＊ｘを採用することができる。また、発話時間および応答遅延時間Ｔの両者の関係は、必ずしも線形でなくともよく、非線形であってかまわない。例えば、応答遅延時間Ｔを導出する非線形の関数の一例として、発話時間を「ｘ」としたとき、シグモイド関数σ（ｘ）を採用することができる。この場合、シグモイド関数のゲインには、一例として、人が一呼吸で発話する発話時間の推定上限値などを設定することができる。
【００５１】
決定部１４は、応答遅延時間に応じてコミュニケーションロボット１のフィラー動作を決定する処理部である。以下、コミュニケーションロボット１に実行させる動作の中でも、コミュニケーションロボット１に対する情報入力から応答出力までの応答遅延時間をつなぐ動作のことを「フィラー動作」と記載する場合がある。
【００５２】
一実施形態として、決定部１４は、予測部１３により予測された応答遅延時間からコミュニケーションロボット１のフィラー動作を決定する。ここで言う「フィラー動作」には、コミュニケーションロボット１の身体の駆動のみならず、その他の表現、例えばメッセージ等の音声出力やＬＥＤ点滅等の表示などもその範疇に含まれる。例えば、決定部１４は、応答遅延時間と動作の対応関係が定義されたルックアップテーブル１４Ａを参照して、予測部１３により予測された応答遅延時間Ｔに対応する動作をコミュニケーションロボット１のフィラー動作として決定することができる。
【００５３】
図８は、ルックアップテーブル１４Ａの一例を示す図である。図８に示すルックアップテーブル１４Ａによれば、応答遅延時間Ｔが０秒以上１秒未満の範囲である場合、ＬＥＤ点滅で表現を行う動作が定義されている。この動作は、一例として、頭部３に発光部３２として組み込まれたリング状のＬＥＤを点滅させることにより実現できる。また、応答遅延時間Ｔが１秒以上２秒未満の範囲である場合、コミュニケーションロボット１に目線を上に向ける動作を実行させることが定義されている。この動作は、一例として、コミュニケーションロボット１の頭部３の中で顔の正面に対応する部分を水平方向よりも上側に向く姿勢へ駆動させることにより実現できる。また、応答遅延時間Ｔが２秒以上５秒未満の範囲である場合、コミュニケーションロボット１に首をかしげる動作を実行させることが定義されている。この動作は、一例として、コミュニケーションロボット１の頭部３をロール方向へ回転して駆動させることにより実現できる。また、応答遅延時間Ｔが５秒以上の範囲である場合、コミュニケーションロボット１に両手を上げる動作を実行すると共に、メッセージ「少々お待ち下さい」の音声出力で表現を行うことが定義されている。この動作は、一例として、コミュニケーションロボット１の右腕部７Ｒおよび左腕部７Ｌを上方向に回転して駆動させることにより実現できる。
【００５４】
このように、ルックアップテーブル１４Ａには、応答遅延時間Ｔが短いほどコミュニケーションロボット１の外形形状、いわゆるシルエットの変化が小さい動作がフィラー動作として定義されている。これは、フィラー動作が実行されることで変化した姿勢のままで情報入力、例えば対象者Ｕ１の発話等に対する応答を出力する事態を避け、フィラー動作前の姿勢に速やかに戻して応答を出力するためである。一方で、ルックアップテーブル１４Ａには、応答遅延時間Ｔが長いほどコミュニケーションロボット１のシルエットの変化が大きい動作がフィラー動作として定義されている。これは、コミュニケーションロボット１のフィラー動作が小さい場合、次のような不安を対象者Ｕ１に与えやすい側面があるからである。例えば、応答遅延時間が長引くにつれて情報入力がコミュニケーションロボット１により受け付けられていない、あるいは情報入力に対応する情報処理が実行されていない等の不安を対象者Ｕ１に与えやすい側面があるからである。
【００５５】
なお、ここでは、あくまで一例としてルックアップテーブル１４Ａを用いる場合を例示したが、応答遅延時間Ｔが長くなるにしたがってシルエットの変化が大きい動作を導出する関数を用いて、応答遅延時間Ｔに対応する動作を出力することとしてもかまわない。例えば、右腕部７Ｒ及び左腕部７Ｌの少なくとも１つの振り上げ動作や振り下げ動作の回転角度の大きさを「θ」としたとき、θ＝（π＊Ｔ）／４を採用することができる。また、応答遅延時間Ｔの長さおよび動作のシルエットの変化の大きさの両者の関係は、必ずしも線形でなくともよく、非線形であってかまわない。例えば、右腕部７Ｒ及び左腕部７Ｌの少なくとも１つの振り上げ動作や振り下げ動作の回転角度の大きさを「θ」としたとき、シグモイド関数σ（θ）を採用することができる。この場合、シグモイド関数のゲインには、一例として、腕部７が上限まで振り上げられた方位と腕部７が下限まで振り下げられた方位との差、すなわち腕部７の可動域などを設定することができる。
【００５６】
動作制御部１５は、コミュニケーションロボット１の動作を制御する処理部である。
【００５７】
一実施形態として、動作制御部１５は、フィラー動作が実行される前の元の姿勢がフィラー動作によって変化し、フィラー動作の完了後に元の姿勢に復帰するまでの時間と、応答遅延時間Ｔとを一致させることとする。この場合、動作制御部１５は、応答遅延時間Ｔが経過した時点で各部位の姿勢が元の姿勢に復帰できるように、コミュニケーションロボット１の各部位の駆動量および駆動速度などの駆動パラメータを決定し、駆動パラメータにしたがってフィラー動作および元の姿勢への復帰動作を実行する。
【００５８】
例えば、フィラー動作が「ＬＥＤ点滅」である場合、動作制御部１５は、コミュニケーションロボット１の頭部３に発光部３２として組み込まれたリング状のＬＥＤを点滅させる。また、フィラー動作が「目線を上に向ける」である場合、動作制御部１５は、コミュニケーションロボット１の左右方向のＸ軸回りに頭部３を上方向へ回転駆動させる。また、フィラー動作が「首をかしげる」である場合、動作制御部１５は、コミュニケーションロボット１の前後方向のＺ軸回りに頭部３をロール方向、左方向または右方向へ回転駆動させる。また、フィラー動作が「両手を上げる＋音声メッセージ」である場合、コミュニケーションロボット１の左右方向のＸ軸回りに右腕部７Ｒおよび左腕部７Ｌを上方向へ回転駆動させると共に、音声出力部９Ｂからメッセージ「少々お待ち下さい」を音声出力させる。このようなフィラー動作の実行後、動作制御部１５は、駆動系のフィラー動作が行われていた場合、フィラー動作の実行前の元の姿勢に復帰する復帰動作を実行する。
【００５９】
［処理の流れ］
図９は、実施例１に係るフィラー動作の制御処理の手順を示すフローチャートである。この処理は、一例として、コミュニケーションロボット１に対する情報入力を受け付けた場合、例えば音声処理部１１により発話区間が検出された場合に起動する。
【００６０】
図９に示すように、音声入力部９Ａから取得された音声データから発話区間が検出されると（ステップＳ１０１Ｙｅｓ）、音声処理部１１は、当該発話区間にワードスポッティングを始めとする音声認識を実行する（ステップＳ１０２）。続いて、伝送処理部１２は、ステップＳ１０２の音声認識結果として得られたテキストの翻訳依頼をサーバ装置５０に伝送する（ステップＳ１０３）。
【００６１】
このようにテキストの翻訳依頼が伝送されたサーバ装置５０では、コミュニケーションロボット１から伝送されたテキストに機械翻訳が実行される。そして、対象者Ｕ１の発話に対応するテキストが母国語から外国語へ翻訳された段階でテキストの翻訳結果がコミュニケーションロボット１へ返信される。
【００６２】
これらステップＳ１０２又はステップＳ１０３と並行するか、あるいはステップＳ１０２及びステップＳ１０３と前後して、予測部１３は、ステップＳ１０１で検出された発話区間の時間長から応答遅延時間を予測する（ステップＳ１０４）。そして、決定部１４は、ステップＳ１０４で予測された応答遅延時間からコミュニケーションロボット１のフィラー動作を決定する（ステップＳ１０５）。
【００６３】
なお、ステップＳ１０４で予測される応答遅延時間は、ステップＳ１０５におけるフィラー動作の決定に用いられる。このため、ステップＳ１０４の処理は、ステップＳ１０５の処理が実行されるまでの任意のタイミングで実行することができる。例えば、ステップＳ１０４の処理がステップＳ１０３の処理の後に実行されたとしても、ステップＳ１０２又はステップＳ１０３と並行して実行されたとしても、ステップＳ１０５以降の処理内容に変更はない。
【００６４】
その上で、動作制御部１５は、ステップＳ１０４で予測された応答遅延時間Ｔの間、ステップＳ１０５で決定されたフィラー動作および元の姿勢への復帰動作を実行する（ステップＳ１０６）。
【００６５】
そして、元の姿勢へ復帰した段階でテキストの翻訳結果がサーバ装置５０から受信されない場合（ステップＳ１０７Ｎｏ）、動作制御部１５は、追加のフィラー動作、例えばシルエットの変化が小さいフィラー動作を優先して実行し（ステップＳ１０８）、ステップＳ１０７へ移行する。
【００６６】
一方、元の姿勢へ復帰した段階でテキストの翻訳結果がサーバ装置５０から受信された場合（ステップＳ１０７Ｙｅｓ）、動作制御部１５は、サーバ装置５０によるテキストの翻訳結果を合成音声等で音声出力し（ステップＳ１０９）、処理を終了する。
【００６７】
なお、図９に示すフローチャートでは、発話区間が検出された後にフィラー動作を実行する場合を例示したが、発話終了が検出される前にフィラー動作を開始することもできる。例えば、発話開始が検出されてから所定の閾値以上、例えば３秒以上経過しても発話終了が検出されない場合、シルエットの変化が大きいフィラー動作を優先して発話終了が検出される前に先行してフィラー動作を開始することもできる。
【００６８】
この他、図９に示すフローチャートでは、元の姿勢へ復帰されてからサーバ装置５０によるテキストの翻訳結果を音声出力する場合を例示したが、これに限定されない。例えば、元の姿勢への復帰前にサーバ装置５０からテキストの翻訳結果が受信された場合、復帰動作を実行しながらサーバ装置５０によるテキストの翻訳結果を音声出力することとしてもかまわない。
【００６９】
［効果の一側面］
上述してきたように、本実施例に係るコミュニケーションロボット１は、コミュニケーションロボット１に対する情報入力から応答出力までの応答遅延時間を予測し、予測された応答遅延時間に対応する動作の実行を決定する。これによって、コミュニケーションロボット１が音声処理等の情報処理を完了して応答できる状態になるまでインタラクションに違和感がない雰囲気をつなげることができる。したがって、本実施例に係るコミュニケーションロボット１によれば、ロボットの応答遅延時のインタラクションに発生する違和感を抑制することが可能である。
【実施例２】
【００７０】
さて、上記の実施例１では、応答遅延時間Ｔの間に１つのフィラー動作をコミュニケーションロボット１に実行させる場合を例示したが、応答遅延時間の間に実行できるフィラー動作が必ずしも１つに限定される訳ではない。そこで、本実施例では、２つ以上のフィラー動作を組み合わせて実行する例について説明する。
【００７１】
図１０は、実施例２に係るコミュニケーションロボット２の機能的構成の一例を示すブロック図である。図１０に示すように、コミュニケーションロボット２は、図３に示すコミュニケーションロボット１に比べて、制御部２０の機能の一部が異なる。すなわち、コミュニケーションロボット２は、設定部２１をさらに有すると共に、図３に示す決定部１４の機能と一部の機能が異なる決定部２２を有する。なお、図３に示すコミュニケーションロボット１と同様の機能を発揮する機能部には同一の符号を付与し、その説明を省略する。
【００７２】
設定部２１は、応答遅延時間に基づいて複数の動作区間を設定する処理部である。ここでは、あくまで一例として、２つの動作区間で２種類のフィラー動作が実行される例を挙げて説明することとする。以下、２つの動作区間のうち先行する動作区間のことを「第１の動作区間」と記載すると共に、第１の動作区間に後続する動作区間のことを「第２の動作区間」と記載する場合がある。
【００７３】
このように第１の動作区間および第２の動作区間を設定するのは、応答遅延時間の近傍でフィラー動作から応答出力の動作へつなげる際の違和感を低減する側面がある。すなわち、予測部１３により予測される応答遅延時間の予測値が応答遅延時間の実測値と必ずしも一致するとは限らないが、そうであるからと言って、応答遅延時間の予測値が的外れであるケースは稀であり、応答遅延時間の実測値は予測値の近傍に収束しやすい。
【００７４】
この知見を利用して、設定部２１は、応答遅延時間の予測値に基づいて第１の動作区間および第２の動作区間を設定する。図１１は、動作区間の設定方法の一例を示す図である。図１１に示すように、設定部２１は、応答遅延時間の予測値Ｔ予測の経過時点の所定時間前、例えば１秒前までの区間を第１の動作区間に設定する。さらに、設定部２１は、第１の動作区間の終了から応答遅延時間の予測値Ｔ実測の経過時点を超えて所定時間後、例えば１秒後までを第２の動作区間に設定する。ここで、応答遅延時間の予測値Ｔ予測が応答遅延時間の実測値Ｔ実測との間でずれが生じたとしても、第２の動作区間の範囲内で応答遅延時間の予測値Ｔ予測および応答遅延時間の実測値Ｔ実測のずれが収束するように、上記の所定時間が設定される。例えば、応答遅延時間の予測値Ｔ予測および応答遅延時間の実測値Ｔ実測のずれの実績のうち所定の割合、例えば８割以上が含まれる区間長を第２の動作区間として設定することができる。この他、応答遅延時間の予測値Ｔ予測および応答遅延時間の実測値Ｔ実測のずれの統計値、例えば中央値や最頻値、平均値などに安全マージンが加算された区間長を第２の動作区間として設定することができる。なお、図１１には、応答遅延時間の予測値Ｔ予測の経過時点の前および後で同一の区間長を持つ第２の動作区間を設定する例を説明したが、上記の実績や上記の統計値に基づいて異なる区間長を設定することもできる。
【００７５】
これによって、応答遅延時間の予測値の経過時点を含む前後の所定時間が第２の動作区間に設定されることになる。このような第２の動作区間において、情報入力に対する応答を出力する動作、例えばテキストの翻訳結果に対応する発話の音声出力を割り込ませて実行する場合、動作が中断、あるいは継続されても違和感が少ないフィラー動作を実行させる。これによって、フィラー動作から応答出力の動作へつなげる際の違和感の軽減を図る。
【００７６】
決定部２２は、図３に示す決定部１４と同様、コミュニケーションロボット２に実行させるフィラー動作を決定する処理部である。
【００７７】
１つの側面として、決定部２２は、図３に示す決定部１４に比較して、設定部２１により設定された複数の動作区間ごとに当該動作区間で実行させるフィラー動作を決定する点が異なる。例えば、上述の通り、設定部２１により第１の動作区間および第２の動作区間が設定される場合、決定部２２は、第１の動作区間および第２の動作区間ごとにフィラー動作を決定する。
【００７８】
ここで、情報入力に対する応答を出力する動作をフィラー動作に割り込ませる状況を想定する場合、応答出力の動作の割込み時に動作が中断、あるいは継続されても違和感が少ないフィラー動作とそうでないフィラー動作がある。
【００７９】
図１２は、動作と違和感の有無の対応関係の一例を示す図である。図１２に示す例では、コミュニケーションロボット２のフィラー動作が駆動系の動作とその他の表現系の動作、すなわち表示および音声による動作とに分類して示されている。さらに、図１２に示す例では、駆動系の動作が対象者Ｕ１に目線を合わせた状態で実行される動作と目線を外す動作とにさらに分類されている。このような分類ごとに、各々の動作が中断された場合と継続された場合とに分けてコミュニケーションロボット２がテキストの翻訳結果に対応する発話を音声出力する応答出力の動作を割り込ませる際の違和感の有無が示されている。
【００８０】
図１２に示す通り、対象者Ｕ１に目線を合わせた状態では、駆動系の動作が中断された場合も、あるいは駆動系の動作が継続された場合のいずれの場合においても、上記の音声出力の割込みに対象者Ｕ１が持つ違和感は少ないことがわかる。例えば、図８に例示する駆動系の動作の中でも、両手を上げる動作は、対象者Ｕ１に目線を合わせた状態で行われる。このように両者の目線が合った状態であれば、コミュニケーションロボット２がテキストの翻訳結果に対応する発話を音声出力しても、当該発話が対象者Ｕ１に向けられたものであることが明らかである。したがって、コミュニケーションロボット２の腕部７を上げる動作、あるいは上げた腕部７を戻す動作が継続されようが途中で中断されようが、さほどの違和感はない。
【００８１】
一方、対象者Ｕ１から目線が外された状態では、駆動系の動作が中断される場合も、あるいは駆動系の動作が継続される場合のいずれの場合においても、上記の音声出力の割込みに対象者Ｕ１が違和感を持つことがわかる。例えば、図８に例示する駆動系の動作の中でも、目線を上げる動作は、対象者Ｕ１から目線が外される。これを対象者Ｕ１の視点から見れば、目線を外しながらの状態、あるいは目線が外された状態でコミュニケーションロボット２がテキストの翻訳結果に対応する発話を音声出力することになる。この場合、当該発話が対象者Ｕ１に向けられたものかどうかに疑問が生じるので、対象者Ｕ１に違和感が生じる。
【００８２】
また、表現系の動作のうち表示が中断される場合、応答遅延時間が経過して対象者Ｕ１にとっての待ち時間が終了したことをＬＥＤ点滅の終了によって表現できる。このため、コミュニケーションロボット２がテキストの翻訳結果に対応する発話を音声出力しても対象者Ｕ１が持つ違和感は少ないことがわかる。その一方で、表示が継続される場合、ＬＥＤ点滅の表現が継続することによって待ち時間が終了していないとの錯誤を対象者Ｕ１に与える可能性があるので、対象者Ｕ１に違和感が生じる。
【００８３】
さらに、表示系の動作のうち音声の表現が中断される場合も、あるいは音声の表現が継続される場合のいずれの場合においても、コミュニケーションロボット２がテキストの翻訳結果に対応する発話を音声出力すると、対象者Ｕ１が違和感を持つことがわかる。例えば、図８に例示する表現系の動作の中でも、メッセージ「少々お待ち下さい」の音声出力が中断されてテキストの翻訳結果に対応する発話が即座に音声出力されれば、デジタルに音声出力が切り替わる様子が人間の振る舞いから逸脱するので、対象者Ｕ１に違和感が生じる。また、メッセージ「少々お待ち下さい」の音声出力を継続すれば、テキストの翻訳結果に対応する発話を音声出力できる状態であるにもかかわらず、無意味なフィラー動作を行うことになるので、本末転倒である。
【００８４】
これらのことから、決定部２２は、第１の動作区間で実行される第１のフィラー動作を決定する場合、上記の実施例１と同様、ルックアップテーブル１４Ａを参照して、第１の動作区間の区間長に対応する動作を第１のフィラー動作として決定する。その一方で、決定部２２は、第２の動作区間で実行される第２のフィラー動作を決定する場合、コミュニケーションロボット２が実行可能な動作のうち、応答出力の動作の割込み時に動作が中断、あるいは継続されても違和感が少ない動作を第２のフィラー動作として決定する。
【００８５】
図１３は、各動作区間で実行が許可される動作の一例を示す図である。図１３に示すように、第１の動作区間には、第１の動作区間の区間長に対応する動作であれば、駆動系の動作のいずれであっても、あるいは表現系の動作のいずれであっても、第１のフィラー動作として決定することが許可されるので、制限は課されない。その一方で、第２の動作区間には、駆動系の動作の中でも、対象者Ｕ１から目線が外される動作を第２のフィラー動作として決定することは許可されない。すなわち、第２の動作区間には、対象者Ｕ１に目線を合わせた状態で実行される動作に絞って第２のフィラー動作として決定することが許可されるといった制限が課される。さらに、第２の動作区間には、表現系の動作の中でも、応答出力の動作の割込み時に動作が中断されても違和感が少ない表示による動作に絞って第２のフィラー動作として決定することが許可されるといった制限が課される。
【００８６】
このように、情報入力に対する応答を出力する動作、例えばテキストの翻訳結果に対応する発話の音声出力を第２のフィラー動作に割り込ませて実行する場合、動作が中断、あるいは継続されても違和感が少ない動作を第２のフィラー動作として決定する。これによって、第２のフィラー動作から応答出力の動作へつなげる際の違和感の軽減を図る。すなわち、コミュニケーションロボット２の動作が終了するまでの段階で当該動作が中断されて応答が出力される場合、当該動作の中断によって動作が途切れる継ぎ目が違和感となって現れることがある。この違和感の現れ方は、図１２に示す通り、駆動系および表現系の動作の種類が変わることによって程度に差が生じる。このことから、中断によって途切れる継ぎ目が違和感となって現れにくい駆動系および表現系の動作を第２のフィラー動作として実行することで、第２のフィラー動作から応答出力の動作へつなげる際の違和感を軽減することができる。
【００８７】
［処理の流れ］
図１４は、実施例２に係るフィラー動作の制御処理の手順を示すフローチャートである。この処理も、一例として、コミュニケーションロボット２に対する情報入力を受け付けた場合、例えば音声処理部１１により発話区間が検出された場合に起動する。
【００８８】
図１４に示すように、音声入力部９Ａから取得された音声データから発話区間が検出されると（ステップＳ２０１Ｙｅｓ）、音声処理部１１は、当該発話区間にワードスポッティングを始めとする音声認識を実行する（ステップＳ２０２）。続いて、伝送処理部１２は、ステップＳ２０２の音声認識結果として得られたテキストの翻訳依頼をサーバ装置５０に伝送する（ステップＳ２０３）。
【００８９】
このようにテキストの翻訳依頼が伝送されたサーバ装置５０では、コミュニケーションロボット１から伝送されたテキストに機械翻訳が実行される。そして、対象者Ｕ１の発話に対応するテキストが母国語から外国語へ翻訳される段階でテキストの翻訳結果がコミュニケーションロボット２へ返信される。
【００９０】
これらステップＳ２０２又はステップＳ２０３と並行するか、あるいはステップＳ２０２及びステップＳ２０３と前後して、予測部１３は、ステップＳ２０１で検出された発話区間の時間長から応答遅延時間を予測する（ステップＳ２０４）。続いて、設定部２１は、ステップＳ２０４で予測された応答遅延時間の予測値に基づいて第１の動作区間および第２の動作区間を設定する（ステップＳ２０５）。
【００９１】
なお、ステップＳ２０４で予測される応答遅延時間は、ステップＳ２０５における第１の動作区間および第２の動作区間の設定に用いられる。このため、ステップＳ２０４の処理は、ステップＳ２０５の処理が実行されるまでの任意のタイミングで実行することができる。例えば、ステップＳ２０４の処理がステップＳ２０３の処理の後に実行されたとしても、ステップＳ２０２又はステップＳ２０３と並行して実行されたとしても、ステップＳ２０５以降の処理内容に変更はない。
【００９２】
さらに、決定部２２は、ルックアップテーブル１４Ａを参照して、第１の動作区間の区間長に対応する動作を第１のフィラー動作として決定する。さらに、決定部２２は、応答出力の動作の割込み時に動作が中断、あるいは継続されても違和感が少ない動作を第２のフィラー動作として決定する（ステップＳ２０６）。
【００９３】
そして、動作制御部１５は、ステップＳ２０５で設定された第１の動作区間の間、ステップＳ２０６で決定された第１のフィラー動作および元の姿勢への復帰動作を実行する（ステップＳ２０７）。
【００９４】
その後、動作制御部１５は、ステップＳ２０６で決定された第２のフィラー動作および元の姿勢への復帰動作を開始する（ステップＳ２０８）。そして、サーバ装置５０からテキストの翻訳結果が受信される前に第２のフィラー動作が完了した場合（ステップＳ２０９ＮｏかつステップＳ２１０Ｙｅｓ）、動作制御部１５は、追加のフィラー動作、例えばシルエットの変化が小さいフィラー動作を開始し（ステップＳ２１１）、ステップＳ２０９へ移行する。
【００９５】
また、テキストの翻訳結果がサーバ装置５０から受信された場合（ステップＳ２０９Ｙｅｓ）、動作制御部１５は、実行中の第２のフィラー動作または追加のフィラー動作を中断するか、あるいは継続し（ステップＳ２１２）、サーバ装置５０によるテキストの翻訳結果を合成音声等で音声出力し（ステップＳ２１３）、処理を終了する。
【００９６】
なお、図１４に示すフローチャートでは、無条件に第１の動作区間および第２の動作区間が設定される例を示したが、応答遅延時間が短いほど複数の動作を行うことは困難となるので、一定の条件を課すこともできる。例えば、ステップＳ２０４で予測された応答遅延時間が所定の閾値、例えば５秒以上であるか否かを判定する。このとき、応答遅延時間が閾値以上である場合に絞ってステップＳ２０５以降の処理を実行する一方で、応答遅延時間が閾値未満である場合、上記の実施例１で図９を用いて説明したステップＳ１０５以降の処理を実行することもできる。
【００９７】
［効果の一側面］
上述してきたように、本実施例に係るコミュニケーションロボット２によれば、上記の実施例１に係るコミュニケーションロボット１と同様、ロボットの応答遅延時のインタラクションに発生する違和感を抑制することが可能である。
【００９８】
さらに、本実施例に係るコミュニケーションロボット２では、応答遅延時間に基づいて第１の動作区間および第２の動作区間を設定する。その上で、本実施例に係るコミュニケーションロボット２では、第１の動作区間の区間長に対応する動作を第１のフィラー動作として決定する。さらに、本実施例に係るコミュニケーションロボット２では、応答出力の動作の割込み時に動作が中断、あるいは継続されても違和感が少ない動作を第２のフィラー動作として決定する。それ故、応答遅延時間の予測値および応答遅延時間の実績値にずれが発生する場合でも、フィラー動作から応答出力の動作へつなげる際の違和感を軽減することが可能である。
【実施例３】
【００９９】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【０１００】
［応答遅延時間１］
上記の実施例１および上記の実施例２では、応答遅延時間の予測に発話時間を用いる例を説明したが、発話時間に限定されず、他の情報を用いることができる。例えば、コミュニケーションロボット１及び２は、発話区間から音声認識により得られたテキストにおけるモーラや音素の数の他、テキストにおける表音文字の数、テキストに対する自然言語処理、例えば形態素解析で得られた単語の数などを応答遅延時間の予測に用いることができる。これらモーラ数、音素数、表音文字数、単語数のいずれの数値を用いる場合においても、数値が大きいほど翻訳処理の所要時間も長くなる。このため、図７に示すルックアップテーブル１３Ａに準拠して、数値が小さいほど短い応答遅延時間を予測し、数値が大きいほど長い応答遅延時間を予測するルックアップテーブルや関数などを用いて、応答遅延時間を予測することができる。
【０１０１】
［応答遅延時間２］
例えば、コミュニケーションロボット１及び２は、応答遅延時間の実測値に基づいて応答遅延時間の予測値を更新することもできる。すなわち、コミュニケーションロボット１及び２は、図９や図１４に示す処理が実行されるバックグラウンドにおいて、情報入力から応答出力までの応答遅延時間を実測値として計測する。このような応答遅延時間の一例として、上記の実施例１及び上記の実施例２の例で従えば、発話区間が検出されてからテキストの翻訳結果が出力されるまでの期間が挙げられる。その上で、コミュニケーションロボット１及び２は、当該実績値と当該実測値が計測された時の発話時間が対応付けられたログを蓄積する。このログを参照して、コミュニケーションロボット１及び２は、ルックアップテーブル１３Ａに含まれるレコードごとに、次のような処理を実行する。すなわち、コミュニケーションロボット１及び２は、上記のログに含まれる応答遅延時間の実測値のうち当該レコードの発話時間に対応する応答遅延時間の実測値と、レコード内の応答遅延時間の予測値との間でずれを算出する。このように算出されたずれの統計値、例えば最頻値や中央値、平均値を求め、コミュニケーションロボット１及び２は、ずれの統計値に基づいて当該レコードの応答遅延時間の予測値を更新する。例えば、予測値から実測値を減算することによりずれが算出される場合、ずれの統計値の符号が正であるならば、予測値からずれの統計値を減算する更新を実行する一方で、ずれの統計値の符号が負であるならば、予測値にずれの統計値を加算する更新を実行する。
【０１０２】
［応答遅延時間３］
上記の実施例１および上記の実施例２では、情報処理の一例として実行される翻訳処理による応答遅延時間を発話時間から動的に予測し、これ以外の応答遅延の要因、例えばネットワークや駆動については一定値を静的に含めて加味する例を説明した。しかしながら、上記の実施例１および上記の実施例２で示された例に限定されず、応答遅延の要因ごとに応答遅延時間を動的に予測することもできる。例えば、コミュニケーションロボット１又は２は、ＰＩＮＧ等のコマンドを用いてサーバ装置５０の応答時間を測定してその応答時間からネットワークに関する応答遅延時間を個別に予測することができる。また、コミュニケーションロボット１又は２は、各部位のアクチュエータへ送信する制御信号の伝送時間から駆動に関する応答遅延時間を予測することができる。
【０１０３】
［スタンドアローン］
上記の実施例１および上記の実施例２では、コミュニケーションロボット１及び２がサーバ装置５０により提供されるプラットフォームを利用する例を説明したが、コミュニケーションロボット１又は２は、スタンドアローンで情報処理を実行することとしてもかまわない。図１５は、実施例３に係るコミュニケーションロボット４の機能的構成の一例を示すブロック図である。図１５に示すように、コミュニケーションロボット４は、図３に示すコミュニケーションロボット１および図１０に示すコミュニケーションロボット２に比べて、通信部９Ｃが不要であると共に、制御部４０の機能の一部が異なる。すなわち、コミュニケーションロボット４は、音声処理部１１や伝送処理部１２の代わりに、音声区間検出部４１、音声認識部４２および翻訳部４３を有する点が異なる。このように発話区間の検出、音声認識、自然言語処理および機械翻訳の全てがコミュニケーションロボット４により実行される場合、ネットワークの伝送遅延が発生する代わりに、音声処理の所要時間が変わる。例えば、音声区間検出部４１、音声認識部４２および翻訳部４３による音声処理がコミュニケーションロボット１又は２の側で実行される分、音声処理の所要時間が増加する。このように音声処理の所要時間が増加する程度は、コミュニケーションロボット４のプロセッサ及びメモリ等のマシンパワーによって変化する。このため、コミュニケーションロボット４の予測部１３が用いるルックアップテーブル１３Ａにおける応答遅延時間の予測値には、音声区間検出部４１、音声認識部４２および翻訳部４３による翻訳処理の所要時間に基づく値が設定される。この際、コミュニケーションロボット４のプロセッサ及びメモリ等の性能の高低に応じて応答遅延時間の予測値を変化させることができる。
【０１０４】
［コミュニケーションロボットの情報処理］
上記の実施例１および上記の実施例２では、発話区間の検出、音声認識、自然言語処理および機械翻訳等の音声処理が情報処理として実行される例を挙げたが、コミュニケーションロボット１又は２が実行する情報処理は音声処理に限定されない。例えば、コミュニケーションロボット１、２又は４は、画像を入力とし、他の情報処理、例えば画像処理、例えば顔認識や表情認識などを実行することとしてもかまわない。この場合、画像処理の所要時間から応答遅延時間を予測することとすればよい。
【０１０５】
［分散および統合］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、音声処理部１１、伝送処理部１２、予測部１３、決定部１４または動作制御部１５をコミュニケーションロボット１の外部装置としてネットワーク経由で接続するようにしてもよい。また、音声処理部１１、伝送処理部１２、予測部１３、設定部２１、決定部２２または動作制御部１５をコミュニケーションロボット２の外部装置としてネットワーク経由で接続するようにしてもよい。また、音声区間検出部４１、音声認識部４２、翻訳部４３、予測部１３、設定部２１、決定部２２または動作制御部１５をコミュニケーションロボット４の外部装置としてネットワーク経由で接続するようにしてもよい。また、音声処理部１１、伝送処理部１２、予測部１３、決定部１４または動作制御部１５を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のコミュニケーションロボット１の機能を実現するようにしてもよい。また、音声処理部１１、伝送処理部１２、予測部１３、設定部２１、決定部２２または動作制御部１５を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のコミュニケーションロボット２の機能を実現するようにしてもよい。また、音声区間検出部４１、音声認識部４２、翻訳部４３、予測部１３、設定部２１、決定部２２または動作制御部１５を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のコミュニケーションロボット４の機能を実現するようにしてもよい。
【０１０６】
［制御プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１６を用いて、上記の実施例と同様の機能を有する制御プログラムを実行するコンピュータの一例について説明する。
【０１０７】
図１６は、実施例１〜実施例３に係る制御プログラムを実行するコンピュータのハードウェア構成例を示す図である。図１６に示すように、コンピュータ１００は、操作部１１０ａと、スピーカ１１０ｂと、カメラ１１０ｃと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、ＣＰＵ１５０と、ＲＯＭ１６０と、ＨＤＤ１７０と、ＲＡＭ１８０とを有する。これら１１０〜１８０の各部はバス１４０を介して接続される。
【０１０８】
ＨＤＤ１７０には、図１６に示すように、上記の実施例１で示した音声処理部１１、伝送処理部１２、予測部１３、決定部１４及び動作制御部１５と同様の機能を発揮する制御プログラム１７０ａが記憶される。また、ＨＤＤ１７０には、上記の実施例２で示した音声処理部１１、伝送処理部１２、予測部１３、設定部２１、決定部２２及び動作制御部１５と同様の機能を発揮する制御プログラム１７０ａが記憶されることとしてもよい。また、ＨＤＤ１７０には、本実施例で示した音声区間検出部４１、音声認識部４２、翻訳部４３、予測部１３、設定部２１、決定部２２及び動作制御部１５と同様の機能を発揮する制御プログラム１７０ａが記憶されることとしてもよい。このような制御プログラム１７０ａは、図３に示した制御部１０、図１０に示した制御部２０または図１５に示した制御部４０の各構成要素と同様、統合又は分離してもかまわない。すなわち、ＨＤＤ１７０には、必ずしも上記の実施例１で示した全てのデータが格納されずともよく、処理に用いるデータがＨＤＤ１７０に格納されればよい。
【０１０９】
このような環境の下、ＣＰＵ１５０は、ＨＤＤ１７０から制御プログラム１７０ａを読み出した上でＲＡＭ１８０へ展開する。この結果、制御プログラム１７０ａは、図１６に示すように、制御プロセス１８０ａとして機能する。この制御プロセス１８０ａは、ＲＡＭ１８０が有する記憶領域のうち制御プロセス１８０ａに割り当てられた領域にＨＤＤ１７０から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、制御プロセス１８０ａが実行する処理の一例として、図９や図１４に示す処理などが含まれる。なお、ＣＰＵ１５０では、必ずしも上記の実施例１で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【０１１０】
なお、上記の制御プログラム１７０ａは、必ずしも最初からＨＤＤ１７０やＲＯＭ１６０に記憶されておらずともかまわない。例えば、コンピュータ１００に挿入されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に制御プログラム１７０ａを記憶させる。そして、コンピュータ１００がこれらの可搬用の物理媒体から制御プログラム１７０ａを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１００に接続される他のコンピュータまたはサーバ装置などに制御プログラム１７０ａを記憶させておき、コンピュータ１００がこれらから制御プログラム１７０ａを取得して実行するようにしてもよい。
【０１１１】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１１２】
（付記１）コミュニケーションロボットに対して入力された情報に基づいて、前記情報が入力されたタイミングから前記コミュニケーションロボットにより応答を出力するまでの応答遅延時間長を予測する予測部と、
予測された応答遅延時間長に対応する前記コミュニケーションロボットの動作を決定する決定部と、
決定した前記動作を前記コミュニケーションロボットに実行させる動作制御部と、
を有することを特徴とするコミュニケーションロボット。
【０１１３】
（付記２）前記決定部は、前記応答遅延時間長の予測値が長いほど前記コミュニケーションロボットのシルエットの変化が大きい動作を実行対象として決定することを特徴とする付記１に記載のコミュニケーションロボット。
【０１１４】
（付記３）前記決定部は、前記予測された応答遅延時間長の経過後に、前記コミュニケーションロボットにより応答が出力できない場合、決定された動作よりも短時間の動作を更に実行対象として決定することを特徴とする付記１に記載のコミュニケーションロボット。
【０１１５】
（付記４）前記予測部は、前記情報の量に基づいて前記応答遅延時間長を予測することを特徴とする付記１に記載のコミュニケーションロボット。
【０１１６】
（付記５）前記予測部は、前記情報の量および応答遅延時間長の予測値の対応関係が定義された対応関係データを参照して、前記コミュニケーションロボットに入力される情報の量に対応する前記応答遅延時間長の予測値を予測に用いることを特徴とする付記４に記載のコミュニケーションロボット。
【０１１７】
（付記６）前記対応関係データに含まれる前記応答遅延時間長の予測値を前記応答遅延時間長の実測値に基づいて更新する更新部をさらに有することを特徴とする付記５に記載のコミュニケーションロボット。
【０１１８】
（付記７）前記予測部により予測された応答遅延時間長に基づいて第１の動作区間および第２の動作区間を設定する設定部をさらに有し、
前記決定部は、前記第１の動作区間の区間長に対応する動作を前記第１の動作区間で実行することを決定すると共に、前記コミュニケーションロボットと前記情報の入力を行う対象者との目線が合った状態で行われる動作を前記第２の動作区間で実行することを決定することを特徴とする付記１に記載のコミュニケーションロボット。
【０１１９】
（付記８）前記第２の動作区間は、前記応答遅延時間長の予測値の経過時点を含むことを特徴とする付記７に記載のコミュニケーションロボット。
【０１２０】
（付記９）コミュニケーションロボットに対して入力された情報に基づいて、前記情報が入力されたタイミングから前記コミュニケーションロボットにより応答を出力するまでの応答遅延時間長を予測し、
予測された応答遅延時間長に対応する前記コミュニケーションロボットの動作を決定し、
決定した前記動作を前記コミュニケーションロボットに実行させる、
処理をコンピュータが実行することを特徴とする制御方法。
【０１２１】
（付記１０）前記決定する処理は、前記応答遅延時間長の予測値が長いほど前記コミュニケーションロボットのシルエットの変化が大きい動作を実行対象として決定することを特徴とする付記９に記載の制御方法。
【０１２２】
（付記１１）前記決定する処理は、前記予測された応答遅延時間長の経過後に、前記コミュニケーションロボットにより応答が出力できない場合、決定された動作よりも短時間の動作を更に実行対象として決定することを特徴とする付記９に記載の制御方法。
【０１２３】
（付記１２）前記予測する処理は、前記情報の量に基づいて前記応答遅延時間長を予測することを特徴とする付記９に記載の制御方法。
【０１２４】
（付記１３）前記予測する処理は、前記情報の量および応答遅延時間長の予測値の対応関係が定義された対応関係データを参照して、前記コミュニケーションロボットに入力される情報の量に対応する前記応答遅延時間長の予測値を予測に用いることを特徴とする付記１２に記載の制御方法。
【０１２５】
（付記１４）前記対応関係データに含まれる前記応答遅延時間長の予測値を前記応答遅延時間長の実測値に基づいて更新する処理を前記コンピュータがさらに実行することを特徴とする付記１３に記載の制御方法。
【０１２６】
（付記１５）前記予測された応答遅延時間長に基づいて第１の動作区間および第２の動作区間を設定する処理を前記コンピュータがさらに実行し、
前記決定する処理は、前記第１の動作区間の区間長に対応する動作を前記第１の動作区間で実行することを決定すると共に、前記コミュニケーションロボットと前記情報の入力を行う対象者との目線が合った状態で行われる動作を前記第２の動作区間で実行することを決定することを特徴とする付記９に記載の制御方法。
【０１２７】
（付記１６）前記第２の動作区間は、前記応答遅延時間長の予測値の経過時点を含むことを特徴とする付記１５に記載の制御方法。
【０１２８】
（付記１７）コミュニケーションロボットに対して入力された情報に基づいて、前記情報が入力されたタイミングから前記コミュニケーションロボットにより応答を出力するまでの応答遅延時間長を予測し、
予測された応答遅延時間長に対応する動作を決定し、
決定した前記動作を前記コミュニケーションロボットに実行させる、
処理をコンピュータに実行させることを特徴とする制御プログラム。
【０１２９】
（付記１８）前記決定する処理は、前記応答遅延時間長の予測値が長いほど前記コミュニケーションロボットのシルエットの変化が大きい動作を実行対象として決定することを特徴とする付記１７に記載の制御プログラム。
【０１３０】
（付記１９）前記決定する処理は、前記予測された応答遅延時間長の経過後に、前記コミュニケーションロボットにより応答が出力できない場合、決定された動作よりも短時間の動作を更に実行対象として決定することを特徴とする付記１７に記載の制御プログラム。
【０１３１】
（付記２０）前記予測する処理は、前記情報の量に基づいて前記応答遅延時間長を予測することを特徴とする付記１７に記載の制御プログラム。
【符号の説明】
【０１３２】
１    コミュニケーションロボット
３    頭部
５    胴部
７Ｒ  右腕部
７Ｌ  左腕部
９Ａ  音入力部
９Ｂ  音出力部
９Ｃ  通信部
９Ｍ  モータ
１０    制御部
１１    音声処理部
１２    伝送処理部
１３    予測部
１４    決定部
１５    動作制御部
５０    サーバ装置
【図１】
2020049596.tif 000003
【図２】
2020049596.tif 000004
【図３】
2020049596.tif 000005
【図４】
2020049596.tif 000006
【図５】
2020049596.tif 000007
【図６】
2020049596.tif 000008
【図７】
2020049596.tif 000009
【図８】
2020049596.tif 000010
【図９】
2020049596.tif 000011
【図１０】
2020049596.tif 000012
【図１１】
2020049596.tif 000013
【図１２】
2020049596.tif 000014
【図１３】
2020049596.tif 000015
【図１４】
2020049596.tif 000016
【図１５】
2020049596.tif 000017
【図１６】
2020049596.tif 000018