(57)【要約】【課題】  発話内容に応じたアクションが実現される機器、出力装置、出力方法および出力プログラムを提供する。【解決手段】  出力装置は、発話命令とアクション命令とを取得する取得部と、前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部と、前記解析部の解析結果に応じて前記アクション命令を修正する修正部と、前記修正部によって修正された前記アクション命令と、前記発話命令とを出力する出力部と、を備える。【選択図】  図２
2018122366.tif 000002
【特許請求の範囲】
【請求項１】
発話命令とアクション命令とを取得する取得部と、
前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部と、
前記解析部の解析結果に応じて前記アクション命令を修正する修正部と、
前記修正部によって修正された前記アクション命令と、前記発話命令とを出力する出力部と、を備えることを特徴とする出力装置。
【請求項２】
前記解析部は、前記発話命令について、前記アクション命令に基づくアクションの前後の発話内容を解析することを特徴とする請求項１記載の出力装置。
【請求項３】
前記修正部は、アクション命令に対して複数の修正例を格納する格納部と、前記解析結果に応じて前記複数の修正例から前記発話内容に対応する修正例を選択する選択部と、を備えることを特徴とする請求項１または２に記載の出力装置。
【請求項４】
前記修正部は、前記解析部の解析結果に応じた修正量を算出し、当該修正量に応じて前記アクション命令を修正することを特徴とする請求項１または２に記載の出力装置。
【請求項５】
前記アクション命令には、修正反映度が関連付けられており、
前記修正部は、前記修正量に前記修正反映度を反映させることで前記アクション命令を修正することを特徴とする請求項４記載の出力装置。
【請求項６】
前記修正部は、前記発話命令から１以上の感情に係るパラメータを抽出することで修正量を算出し、当該修正量に応じて前記アクション命令を修正することを特徴とする請求項１または２に記載の出力装置。
【請求項７】
前記解析部は、前記解析結果に応じて前記パラメータに重み付けを行うことで前記修正量を算出することを特徴とする請求項６記載の出力装置。
【請求項８】
前記修正部は、前記アクション命令に応じて、前記１以上の感情に係るパラメータから抽出するパラメータを特定することを特徴とする請求項６または７に記載の出力装置。
【請求項９】
前記解析部は、前記発話命令から、予め格納しておいたキーワードを抽出することを特徴とする請求項１〜８のいずれか一項に記載の出力装置。
【請求項１０】
発話命令とアクション命令とを取得部が取得し、
前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析部が解析し、
前記解析部の解析結果に応じて前記アクション命令を修正部が修正し、
前記修正部によって修正された前記アクション命令と、前記発話命令とを出力部が出力する、ことを特徴とする出力方法。
【請求項１１】
コンピュータに、
発話命令とアクション命令とを取得する処理と、
前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する処理と、
前記解析する処理の解析結果に応じて前記アクション命令を修正する処理と、
前記修正する処理によって修正された前記アクション命令と、前記発話命令とを出力する処理と、を実行させることを特徴とする出力プログラム。
【請求項１２】
発話命令に応じて発話する発話部と、
アクション命令に応じてアクションを行うアクション部と、
前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部と、
前記解析部の解析結果に応じて前記アクション命令を修正する修正部と、
前記修正部の修正結果に応じて前記アクション部の制御を行う制御部と、を備えることを特徴とする機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、機器、出力装置、出力方法および出力プログラムに関する。
【背景技術】
【０００２】
発話とアクションとを組み合わせて表現を行うロボットが開発されている。このようなロボットについて、同じフレーズに対して変化の無い画一的なアクションが選択されることを避けるために、乱数を用いて全く同じアクションが行われないような技術が開示されている（例えば、特許文献１参照）。また、動物型ロボットにおいて入力情報の履歴に応じた動作を行う技術が開示されている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開ＷＯ２０１２−１０３０３０号
【特許文献２】特開２０１０−１４９２７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、乱数を用いた技術では、自然なアクションが保証されるわけではない。例えば、「がっくり」というアクションが繰り返される場合、１回目で少し強くうなだれ、２回目で少し緩やかにうなだれた場合、画一的ではないものの不自然なアクションになるおそれがある。また、入力情報の履歴に応じた動作を行う場合、過去情報の蓄積を基に行動が決定されるため、当該行動後の発話との関係で不自然なアクションになるおそれがある。
【０００５】
１つの側面では、本件は、発話内容に応じたアクションが実現される機器、出力装置、出力方法および出力プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
１つの態様では、出力装置は、発話命令とアクション命令とを取得する取得部と、前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部と、前記解析部の解析結果に応じて前記アクション命令を修正する修正部と、前記修正部によって修正された前記アクション命令と、前記発話命令とを出力する出力部と、を備える。
【０００７】
１つの態様では、機器は、発話命令に応じて発話する発話部と、アクション命令に応じてアクションを行うアクション部と、前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部と、前記解析部の解析結果に応じて前記アクション命令を修正する修正部と、前記修正部の修正結果に応じて前記アクション部の制御を行う制御部と、を備える。
【発明の効果】
【０００８】
発話内容に応じたアクションを実現することができる。
【図面の簡単な説明】
【０００９】
【図１】（ａ）は実施例１に係る機器制御装置が適用される機器を説明するためのブロック図であり、（ｂ）は機器制御装置のハードウェア構成を例示する図である。
【図２】（ａ）は機器制御プログラムの実行によって実現される機能のブロック図であり、（ｂ）はアクション修正部のブロック図であり、（ｃ）はアクションデータベースに格納されているテーブルを例示する図である。
【図３】（ａ）は実施例２に係る機器制御装置に実現される各機能を例示する図であり、（ｂ）はアクション修正部のブロック図であり、（ｃ）は算出されたパラメータ反映値を例示する図である。
【図４】（ａ）はキーワードデータベースに格納されているテーブルを例示する図であり、（ｂ）は感情に係るパラメータの抽出を例示する図である。
【図５】（ａ）は実施例３に係る機器制御装置に実現される各機能を例示する図であり、（ｂ）はアクションデータベースに格納されているテーブルを例示する図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照しつつ、実施例について説明する。
【実施例１】
【００１１】
図１（ａ）は、実施例１に係る機器制御装置１００が適用される機器３００を説明するためのブロック図である。図１（ａ）で例示するように、機器３００は、機器制御装置１００およびロボット２００を備える。ロボット２００は、発話ロボットであり、音声出力部２０１、アクション部２０２などを備える。音声出力部２０１は、スピーカなどであり、機器制御装置１００から送られてくる音声データに応じて発話する。アクション部２０２は、ロボット２００の関節を駆動するモータなどを備え、機器制御装置１００から送られてくるモータ制御データに応じて関節角度を実現することでアクションを行う。機器３００のユーザは、例えば、ロボット２００を用いて発話とアクションとを組み合わせたデモンストレーションを開発する開発者である。
【００１２】
図１（ｂ）は、機器制御装置１００のハードウェア構成を例示する図である。図１（ｂ）で例示するように、機器制御装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、記憶装置１０３、入力機器１０４、インタフェース１０５などを備える。これらの各機器は、バスなどによって接続されている。
【００１３】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１は、中央演算処理装置である。ＣＰＵ１０１は、１以上のコアを含む。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０２は、ＣＰＵ１０１が実行するプログラム、ＣＰＵ１０１が処理するデータなどを一時的に記憶する揮発性メモリである。記憶装置１０３は、不揮発性記憶装置である。記憶装置１０３として、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリなどのソリッド・ステート・ドライブ（ＳＳＤ）、ハードディスクドライブに駆動されるハードディスクなどを用いることができる。入力機器１０４は、キーボード、マウスなどであり、ユーザが情報を入力するための機器である。インタフェース１０５は、ロボット２００との間で信号を送受信するためのインタフェースである。
【００１４】
ＣＰＵ１０１が記憶装置１０３に記憶されている機器制御プログラムを実行することによって、機器制御装置１００内に各機能が実現される。図２（ａ）は、機器制御プログラムの実行によって実現される機能のブロック図である。なお、各機能は、専用の回路などのハードウェアであってもよい。
【００１５】
図２（ａ）で例示するように、機器制御装置１００内に、スクリプト取得部１０、スクリプト解析部２０、音声データ出力部３０、発話解析部４０、アクション特定部５０、アクション修正部６０、アクションデータ出力部７０、モータ制御部８０などが実現される。図２（ｂ）で例示するように、アクション修正部６０は、アクション選択部６１およびアクションデータベース６２を含む。
【００１６】
スクリプト取得部１０は、例えば、ユーザが入力機器１０４から入力したスクリプトを取得する。スクリプトには、発話命令とアクション命令とが含まれる。例えば、発話命令は、第１発話内容および第２発話内容を含んでいる。本実施例においては、第１発話内容として「今日は疲れました」が入力され、第１発話内容後の第２発話内容として「明日も大変な見込みです」が入力される。また、本実施例においては、第１発話内容と第２発話内容との間のアクション命令として、「がっくり」が入力される。スクリプト取得部１０は、取得したスクリプトをスクリプト解析部２０に送る。
【００１７】
スクリプト解析部２０は、スクリプト取得部１０から受け取ったスクリプトの解析を行う。本実施例においては、スクリプト解析部２０は、スクリプト取得部１０から受け取ったスクリプトから第１発話内容および第２発話内容を抽出し、音声データ出力部３０に送る。音声データ出力部３０は、第１発話内容および第２発話内容の音声データを図１の音声出力部２０１に送る。それにより、ロボット２００は、音声出力部２０１から「今日は疲れました」と発話し、その後に「明日も大変な見込みです」と発話する。
【００１８】
また、スクリプト解析部２０は、第１発話内容および第２発話内容を発話解析部４０に送る。また、スクリプト解析部２０は、スクリプト取得部１０から受け取ったスクリプトからアクション命令を抽出し、アクション特定部５０に送る。発話解析部４０は、第１発話内容および第２発話内容を解析する。例えば、発話解析部４０は、キーワードデータベース４１を参照することで、第１発話内容から第１キーワードを抽出する。例えば、第１キーワードとして「疲れ」が抽出される。発話解析部４０は、第１キーワード、または、第１発話内容にキーワードが無かったことを表す情報をインデックスＡとしてアクション修正部６０に送る。次に、発話解析部４０は、キーワードデータベース４１を参照することで、第２発話内容から第２キーワードを抽出する。例えば、第２キーワードとして「明日も」が抽出される。発話解析部４０は、第２キーワード、または、第２発話内容にキーワードが無かったことを表す情報をインデックスＢとしてアクション修正部６０に送る。インデックスＡおよびインデックスＢは、修正方法としての機能を有する。
【００１９】
アクション特定部５０は、アクションデータベース５１を参照することで、スクリプト解析部２０から受け取ったアクション命令「がっくり」の基本動作を特定する。例えば、アクション特定部５０は、うなだれる動作をアクション命令「がっくり」の基本動作として特定する。また、アクション特定部５０は、うなだれる動作についてのアクション修正方法を特定する。例えば、うなだれる動作については、首、手、腕等の角度が修正方法として特定される。アクション特定部５０は、特定したアクション命令およびアクション修正方法をアクション修正部６０に送る。
【００２０】
図２（ｃ）で例示するように、アクションデータベース６２には、複数のアクションのそれぞれについて、インデックスＡおよびインデックスＢに対応して修正例を修正内容として格納している。例えば、アクション命令が「がっくり」である場合、インデックスＡおよびインデックスＢに対応する首、手、腕等の角度が修正例として格納されている。例えば、インデックスＡに「疲れ」が含まれていてインデックスＢに「明日も」が含まれていれば、うなだれる動作（関節角度）を大きくすることが考えられる。アクション選択部６１は、インデックスＡおよびインデックスＢに対応するアクション例をアクションデータベース６２から選択することで、アクション命令「がっくり」の基本動作を修正する。アクション選択部６１は、修正後の動作をアクションデータ出力部７０に送る。
【００２１】
アクションデータ出力部７０は、修正後の動作に係るデータをモータ制御部８０に送る。モータ制御部８０は、受け取ったデータに基づいて、図１（ａ）のアクション部２０２に備わるモータを制御することで、ロボット２００にアクションを行わせる。それにより、ロボット２００は、音声出力部２０１が「今日は疲れました」と発話した後に、アクション部２０２が修正された「がっくり」の動作を行い、その後に、音声出力部２０１が「明日も大変な見込みです」と発話する。
【００２２】
本実施例によれば、アクション命令に基づくアクションの後の発話内容に応じて、アクション命令が修正される。修正されたアクション命令に応じて、ロボット２００のアクション部２０２はアクションを行う。アクション前の発話内容だけを解析した場合には、当該アクション後の発話内容との関係によっては当該アクションが不自然になるおそれがある。これに対して、本実施例においては、アクションの後の発話内容の解析結果がアクション命令の修正に反映されるため、発話内容に応じた適切なアクションが行われる。また、アクション前後の発話内容に応じてアクション命令を修正することで、アクションをより適切に修正することができる。なお、本実施例においては、音声データ出力部３０が音声データを音声出力部２０１に送ることでロボット２００に発話させ、アクションデータ出力部７０が修正後の動作に係るデータをモータ制御部８０に送ることでロボット２００にアクションを行わせたが、それに限られない。例えば、音声データ出力部３０が出力する音声データおよびアクションデータ出力部７０が出力する動作に係るデータを、メモリなどの記憶装置に記憶してもよい。
【００２３】
本実施例において、スクリプト取得部１０が発話命令とアクション命令とを取得する取得部の一例として機能する。発話解析部４０が、前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部の一例として機能する。アクション修正部６０が前記解析部の解析結果に応じて前記アクション命令を修正する修正部の一例として機能する。音声データ出力部３０およびアクションデータ出力部７０が、前記修正部によって修正された前記アクション命令と、前記発話命令とを出力する出力部の一例として機能する。音声出力部２０１が、発話命令に応じて発話する発話部の一例として機能する。アクション部２０２が、アクション命令に応じてアクションを行うアクション部の一例として機能する。
【実施例２】
【００２４】
図３（ａ）は、実施例２に係る機器制御装置１００ａに実現される各機能を例示する図である。機器制御装置１００ａが実施例１の機器制御装置１００と異なる点は、発話解析部４０の代わりに発話解析部４０ａが実現され、アクション特定部５０の代わりにアクション特定部５０ａが実現され、アクション修正部６０の代わりにアクション修正部６０ａが実現される点である。図３（ｂ）で例示するように、アクション修正部６０ａは、アクションデータベース６２、反映値算出部６３および修正部６４を備える。本実施例においても、第１発話内容として「今日は疲れました」が入力され、第２発話内容として「明日も大変な見込みです」が入力され、アクションとして、「がっくり」が入力された場合について説明する。実施例１と同様の機能については、同一符号を付すことで説明を省略する。
【００２５】
発話解析部４０ａは、キーワードデータベース４１を参照することで、第１発話内容から第１キーワードを抽出する。例えば、第１キーワードとして「疲れ」が抽出される。次に、発話解析部４０ａは、キーワードデータベース４１を参照することで、第２発話内容から第２キーワードを抽出する。例えば、第２キーワードとして「明日も」が抽出される。
【００２６】
アクション特定部５０ａは、アクションデータベース５１を参照することで、スクリプト解析部２０から受け取ったアクション命令「がっくり」に対応する感情を特定し、発話解析部４０ａに送る。例えば、「がっくり」には、喜怒哀楽のうち「哀」が対応付けられているものとする。発話解析部４０ａは、第１キーワードおよび第２キーワードと、アクション命令「がっくり」に対応する感情「哀」に基づいて、修正量をパラメータとして算出する。
【００２７】
図４（ａ）は、キーワードデータベース４１に格納されているテーブルを例示する図である。図４（ａ）で例示するように、テーブルでは、各キーワードに対して、喜怒哀楽等の、１以上の感情に係るパラメータが関連付けられている。例えば、「楽し」については「喜」のパラメータ値「１５」が関連付けられ、「楽」のパラメータ値「３５」が関連付けられている。例えば、「疲れ」については「怒」のパラメータ値「１５」が関連付けられ、「哀」のパラメータ値「３５」が関連付けられている。例えば、「明日も」については、感情を強めるための係数「×１」がパラメータとして関連付けられている。たとえば、「だけど」については感情を和らげるための係数「×−１」がパラメータとして関連づけられている。
【００２８】
図４（ｂ）で例示するように、発話解析部４０ａは、「疲れ」について「怒」のパラメータ値「１５」および「哀」のパラメータ値「３５」を抽出する。また、発話解析部４０ａは、「明日も」について係数「×１」を抽出し、各パラメータ値に「×１」を係数として乗算し、「怒」のパラメータ値「１５」および「哀」のパラメータ値「３５」を抽出する。発話解析部４０ａは、アクション特定部５０ａから受け取った感情「哀」のパラメータ値「３５」と「３５」とを抽出し、足し合わせる。発話解析部４０ａは、得られた数値「７０」を修正量として得る。
【００２９】
なお、他の例として、第１発話内容として「今日は疲れたけど」が入力され、第２発話内容として「楽しかったです」が入力された場合、第１キーワードとして「疲れ」が抽出され、第２キーワードとして「楽し」が抽出される。この場合、「疲れ」について「怒」のパラメータ値「１５」および「哀」のパラメータ値「３５」が抽出され、「楽し」について「喜」のパラメータ値「１５」および「楽」のパラメータ値「３５」が抽出される。なお、日本語では、後の単語の意味が強くなる傾向にあるため、第２キーワードのパラメータ値に重み付けを行うことで、発話内容に応じた自然なアクションを実現することができる。例えば、第２キーワードのパラメータ値に「１」を加算することで、重み付けを行ってもよい。この場合、「楽し」について「喜」のパラメータ値「１６」が抽出され、「楽」のパラメータ値「３６」が抽出される。この場合において、アクション特定部５０ａが感情「楽」を特定していれば、「楽」のパラメータ値「０」と「３６」とが足し合わされ、得られた数値「３６」が修正量として抽出されることになる。英語では、先の単語の意味が強くなる傾向にあるため、第１キーワードのパラメータ値の重みを大きくしてもよい。このように、言語に応じて、重み付けを行う対象を変更してもよい。
【００３０】
図４（ｂ）の例では、第１発話内容および第２発話内容からそれぞれ１つのキーワードが抽出されているが、それに限られない。例えば、第１発話内容にキーワードが複数含まれている場合には、各キーワードのパラメータ値を抽出し、対応するパラメータ同士を足し合わせてもよい。
【００３１】
アクション特定部５０ａは、アクションデータベース５１を参照することで、スクリプト解析部２０から受け取ったアクション命令「がっくり」の基本動作を特定する。例えば、アクション特定部５０ａは、「がっくり」の基本動作を実現するための、首、手、腕等の関節角度を特定する。また、アクション特定部５０ａは、アクションデータベース５１を参照することで、アクション命令「がっくり」について各関節の修正反映度を取得する。アクション特定部５０ａは、特定した基本動作および修正反映度をアクション修正部６０ａに送る。なお、修正反映度は、修正方法としての機能を有する。
【００３２】
反映値算出部６３は、アクション特定部５０ａから受け取った基本動作および修正反映度と、発話解析部４０ａから受け取った修正値とから、パラメータ反映値を算出する。図３（ｃ）は、算出されたパラメータ反映値を例示する図である。関節１については修正反映度が「０」であるため、修正量に関わらず操作量が修正されない。関節２については修正反映度が「１」であるため、修正量７０に「１」が掛け合わされ、得られた修正値「７０」が操作量「４０」に加算され、修正操作量「１１０」が算出される。関節３については修正反映度が「２」であるため、修正量７０に「２」が掛け合わされ、得られた修正値「１４０」が操作量「１０」に加算され、修正操作量「１５０」が算出される。関節４については修正反映度が「−３」であるため、修正量７０に「−３」が掛け合わされ、得られた修正値「−２１０」が操作量「０」に加算され、修正操作量「−２１０」が算出される。修正部６４は、修正後の動作をアクションデータ出力部７０に送る。
【００３３】
本実施例によれば、アクション命令に基づくアクションの後の発話内容に応じて、アクション命令が修正される。修正されたアクション命令に応じて、ロボット２００のアクション部２０２はアクションを行う。アクション前の発話内容だけを解析した場合には、当該アクション後の発話内容との関係によっては当該アクションが不自然になるおそれがある。これに対して、本実施例においては、アクションの後の発話内容の解析結果がアクション命令の修正に反映されるため、発話内容に応じた適切なアクションが行われる。また、アクション前後の発話内容に応じてアクション命令を修正することで、アクションをより適切に修正することができる。また、基本動作の修正量に感情に係るパラメータを用いるため、感情に応じたアクションの修正が可能となる。また、感情パラメータに重み付けを行うことで、言語に特有な感情表現に応じた修正が可能となる。なお、本実施例においては、音声データ出力部３０が音声データを音声出力部２０１に送ることでロボット２００に発話させ、アクションデータ出力部７０が修正後の動作に係るデータをモータ制御部８０に送ることでロボット２００にアクションを行わせたが、それに限られない。例えば、音声データ出力部３０が出力する音声データおよびアクションデータ出力部７０が出力する動作に係るデータを、メモリなどの記憶装置に記憶してもよい。
【００３４】
上記各例において、スクリプト取得部１０が発話命令とアクション命令とを取得する取得部の一例として機能する。発話解析部４０ａが、前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部の一例として機能する。アクション修正部６０ａが前記解析部の解析結果に応じて前記アクション命令を修正する修正部の一例として機能する。音声データ出力部３０およびアクションデータ出力部７０が、前記修正部によって修正された前記アクション命令と、前記発話命令とを出力する出力部の一例として機能する。音声出力部２０１が、発話命令に応じて発話する発話部の一例として機能する。アクション部２０２が、アクション命令に応じてアクションを行うアクション部の一例として機能する。
【実施例３】
【００３５】
図５（ａ）は、実施例３に係る機器制御装置１００ｂに実現される各機能を例示する図である。機器制御装置１００ｂが実施例２の機器制御装置１００ａと異なる点は、発話解析部４０ａの代わりに発話解析部４０ｂが備わり、アクション特定部５０ａの代わりにアクション特定部５０ｂが備わり、新たにキーワード解析条件作成部４３およびアクションデータベース４４が備わっている点である。本実施例においても、第１発話内容として「今日は疲れました」が入力され、第２発話内容として「明日も大変な見込みです」が入力され、アクション命令として、「がっくり」が入力された場合について説明する。実施例２と同様の機能については、同一符号を付すことで説明を省略する。
【００３６】
アクション特定部５０ｂは、アクションデータベース５１を参照することで、スクリプト解析部２０から受け取ったアクション命令「がっくり」の基本動作を特定する。例えば、アクション特定部５０ｂは、「がっくり」の基本動作を実現するための、首、手、腕等の関節角度を特定する。また、アクション特定部５０ｂは、アクションデータベース５１を参照することで、アクション命令「がっくり」について各関節について修正反映度を取得する。また、アクション特定部５０ｂは、特定した基本動作および修正反映度をアクション修正部６０ａに送る。また、アクション特定部５０ｂは、特定したアクション命令をキーワード解析条件作成部４３に送る。
【００３７】
図５（ｂ）は、アクションデータベース４４に格納されているテーブルを例示する図である。図５（ｂ）で例示するように、テーブルには、各アクション命令に関連付けて、喜怒哀楽のそれぞれの関連度が格納されている。関連度は、数値が高いほど喜怒哀楽のそれぞれとの関連が高いことを示す。なお、テーブルには、各アクション命令に関連付けて、喜怒哀楽などの基本パラメータ以外の条件を優先する場合の特別情報が他のパラメータとして格納されていてもよい。キーワード解析条件作成部４３は、アクションデータベース４４を参照し、アクション特定部５０ａから受け取ったアクション命令に対応する喜怒哀楽の関連度の組み合わせ、または特別情報を取得する。キーワード解析条件作成部４３は、喜怒哀楽の関連度の組み合わせまたは特別情報を発話解析部４０ｂに送る。
【００３８】
発話解析部４０ｂは、キーワードデータベース４１を参照することで、第１発話内容から第１キーワードを抽出する。例えば、第１キーワードとして「疲れ」が抽出される。次に、発話解析部４０ｂは、キーワードデータベース４１を参照することで、第２発話内容から第２キーワードを抽出する。例えば、第２キーワードとして「明日も」が抽出される。
【００３９】
発話解析部４０ｂは、キーワード解析条件作成部４３から受け取った喜怒哀楽の組み合わせのうち関連度が閾値以上の項目について、パラメータを抽出する。例えば、アクション命令「がっくり」では、「哀」の関連度が閾値以上に設定されているものとする。図４（ａ）で説明した例では、発話解析部４０ｂ、「疲れ」について「哀」のパラメータ値「３５」を抽出する。また、発話解析部４０ｂは、「明日も」について、各パラメータ値に「×１」を係数として乗算し、「哀」のパラメータ値「３５」を抽出する。発話解析部４０ｂは、これらの「哀」のパラメータ値「３５」と「３５」とを抽出し、足し合わせる。発話解析部４０ｂは、得られた数値「７０」を修正量として得る。
【００４０】
本実施例によれば、アクション命令に基づくアクションの後の発話内容に応じて、アクション命令が修正される。修正されたアクション命令に応じて、ロボット２００のアクション部２０２はアクションを行う。アクション前の発話内容だけを解析した場合には、当該アクション後の発話内容との関係によっては当該アクションが不自然になるおそれがある。これに対して、本実施例においては、アクションの後の発話内容の解析結果がアクション命令の修正に反映されるため、発話内容に応じた適切なアクションが行われる。また、アクション前後の発話内容に応じてアクション命令を修正することで、アクションをより適切に修正することができる。また、基本動作の修正量に感情に係るパラメータを用いるため、感情に応じたアクションの修正が可能となる。また、感情パラメータに重み付けを行うことで、言語に特有な感情表現に応じた修正が可能となる。なお、本実施例においては、音声データ出力部３０が音声データを音声出力部２０１に送ることでロボット２００に発話させ、アクションデータ出力部７０が修正後の動作に係るデータをモータ制御部８０に送ることでロボット２００にアクションを行わせたが、それに限られない。例えば、音声データ出力部３０が出力する音声データおよびアクションデータ出力部７０が出力する動作に係るデータを、メモリなどの記憶装置に記憶してもよい。
【００４１】
上記各例において、スクリプト取得部１０が発話命令とアクション命令とを取得する取得部の一例として機能する。発話解析部４０ｂが、前記発話命令について、前記アクション命令に基づくアクションの後の発話内容を解析する解析部の一例として機能する。アクション修正部６０ｂが前記解析部の解析結果に応じて前記アクション命令を修正する修正部の一例として機能する。音声データ出力部３０およびアクションデータ出力部７０が、前記修正部によって修正された前記アクション命令と、前記発話命令とを出力する出力部の一例として機能する。音声出力部２０１が、発話命令に応じて発話する発話部の一例として機能する。アクション部２０２が、アクション命令に応じてアクションを行うアクション部の一例として機能する。
【００４２】
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００４３】
１０  スクリプト取得部
２０  スクリプト解析部
３０  音声データ出力部
４０  発話解析部
４１  キーワードデータベース
５０  アクション特定部
５１  アクションデータベース
６０  アクション修正部
６１  アクション選択部
６２  アクションデータベース
６３  反映値算出部
６４  修正部
７０  アクションデータ出力部
８０  モータ制御部
１００  機器制御装置
【図１】
2018122366.tif 000003
【図２】
2018122366.tif 000004
【図３】
2018122366.tif 000005
【図４】
2018122366.tif 000006
【図５】
2018122366.tif 000007