JP3923378B2 - Robot control apparatus, robot control method and program - Google Patents

Robot control apparatus, robot control method and program Download PDF

Info

Publication number
JP3923378B2
JP3923378B2 JP2002180335A JP2002180335A JP3923378B2 JP 3923378 B2 JP3923378 B2 JP 3923378B2 JP 2002180335 A JP2002180335 A JP 2002180335A JP 2002180335 A JP2002180335 A JP 2002180335A JP 3923378 B2 JP3923378 B2 JP 3923378B2
Authority
JP
Japan
Prior art keywords
morpheme
morpheme information
unit
information
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002180335A
Other languages
Japanese (ja)
Other versions
JP2004017269A (en
Inventor
声揚 黄
裕 勝倉
和生 岡田
淳 富士本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universal Entertainment Corp
PtoPA Inc
Original Assignee
PtoPA Inc
Aruze Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PtoPA Inc, Aruze Corp filed Critical PtoPA Inc
Priority to JP2002180335A priority Critical patent/JP3923378B2/en
Publication of JP2004017269A publication Critical patent/JP2004017269A/en
Application granted granted Critical
Publication of JP3923378B2 publication Critical patent/JP3923378B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Toys (AREA)
  • Manipulator (AREA)
  • Machine Translation (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、複数の関節のそれぞれに配備された電動モータが、利用者から発せられた発話内容に基づいて関節を駆動させるロボット制御装置、ロボット制御方法及びプログラムに関する。
【0002】
【従来の技術】
従来から、利用者から発せられた音声に反応する音声ロボットがある。この音声ロボットは、パチンコ遊技場等の人が多く出入りするような場所に設置すれば、一種の広告人形としての機能を果たすことができる。また、特に一人暮らしの者が、自宅に音声ロボットを設置し、その音声ロボットに向かって発話すれば、音声ロボットはその発話に反応して可動するので、かかる者は、所定の動作をする音声ロボットを見て楽しむことができ、少しでも一人暮らしの寂しさを紛らわすことができる。
【0003】
【発明が解決しようとする課題】
しかしながら、上記音声ロボットは、利用者から発せられた音声に反応してある一の動作(例えば、首だけの動作)しか行わず、利用者は音声ロボットに対して何か物足りなさを感じていた。一方、現在では、利用者から発せられた音声に反応して複数の一連動作を行う音声ロボットもあるが、この音声ロボットは、利用者から発話された発話内容とは関係なく、予め定められた複数の動作パターン(例えば、首→腕→腰の順番に動作するなど)を連続して実行するだけのものに過ぎす、利用者の心を満足させるものではなかった。
【0004】
そこで、本発明は以上の点に鑑みてなされたものであり、利用者が発話した発話内容に基づいて、その発話内容に関係する一連の動作をさせることのできるロボット制御装置、ロボット制御方法及びプログラムを提供する。
【0005】
【課題を解決するための手段】
本願に係る発明は、上記課題を解決すべくなされたものであり、利用者から入力されるであろう発話内容又は利用者への回答内容に関連性のある形態素を示す談話範囲には、少なくとも一つの電動モータで関節を駆動させることによって、談話範囲を構成する形態素の意味内容に関係する一連の動作を行わせるための第一の動作命令が関連付けられており、談話範囲を予め複数記憶し、利用者から入力された発話内容に基づいて、発話内容を示す文字列を特定し、特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出し、抽出された第一形態素情報と各談話範囲とを照合し、各談話範囲の中から、第一形態素情報に含まれる形態素と一致する談話範囲を検索し、検索された談話範囲に基づいて、談話範囲に関連付けられた第一の動作命令を取得し、取得された第一の動作命令に基づいて、電動モータで関節を駆動させることによって、その第一の動作命令に対応する一連の動作を実行することを特徴とする。
【0006】
このような本願に係る発明によれば、ロボット制御装置が、各談話範囲の中から、第一形態素情報に含まれる形態素と一致する談話範囲を検索し、検索した談話範囲に基づいて、談話範囲に関連付けられた第一の動作命令を取得し、該当する電動モータで関節を駆動させることによって、その第一の動作命令に対応する一連の動作を実行するので、ロボット制御装置は、利用者からの発話内容に関係する一連の動作を実行することで、恰もコミュニケーションを取っているかのような印象を利用者に与えさせることができる。
【0007】
即ち、第一の動作命令が、上記談話範囲の意味内容に関連する一連の動作を行わせるための命令であるため、ロボット制御装置は、利用者からの発話内容に上記談話範囲が含まれていれば、その談話範囲の意味内容に関連する一連の動作を行うことができる。例えば、談話範囲が”野球”であれば、その野球の意味内容に関連する動作として、ロボット制御装置は、ロボット制御装置がバットを振っているような動作を行うことができる。これにより、ロボット制御装置が利用者から発話された発話内容に関連する動作を実行するので、利用者は、恰もロボット制御装置との間でコミュニケーションを取っているような感覚を味わうことができる。
【0008】
上記構成においては、利用者から入力されるであろう発話内容又は利用者への回答内容に関連性のある形態素を示す談話範囲には、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素を示す第二形態素情報が複数関連付けられ、各第二形態素情報には、少なくとも一つの電動モータで関節を駆動させることによって、第二形態素情報の意味内容に関係する一連の動作を行わせるための第二の動作命令がそれぞれに関連付けてられており、検索された談話範囲に関連付けられている各第二形態素情報と、抽出された第一形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報を検索し、検索手段で検索された第二形態素情報に基づいて、第二形態素情報に関連付けられた第二の動作命令を取得し、取得された第二の動作命令に基づいて、電動モータで関節を駆動させることによって、その第二の動作命令に対応する一連の動作を実行することができる。
【0009】
この場合には、ロボット制御装置が、検索した談話範囲に関連付けられている各第二形態素情報と、抽出した第一形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報を検索し、検索した第二形態素情報に基づいて、第二形態素情報に関連付けられた第二の動作命令を取得し、該当する電動モータで関節を駆動させることによって、その第二の動作命令に対応する一連の動作を実行するので、ロボット制御装置は、検索した第二形態素情報に基づいて、利用者からの発話内容により近い内容を示した一連の動作を行うことができる。
【0010】
更に上記構成においては、抽出された第一形態素情報と各第二形態素情報とを照合し、各第二形態素情報毎に、第二形態素情報に対して第一形態素情報が占める割合を計算し、各第二形態素情報毎に計算された各割合の大きさに応じて、各第二形態素情報の中から、一の第二形態素情報を選択し、選択された第二形態素情報に基づいて、第二形態素情報に関連付けられた第二の動作命令を取得することができる。
【0011】
この場合には、ロボット制御装置が、各第二形態素情報毎に、第二形態素情報に対して該第一形態素情報が占める割合を計算し、各第二形態素情報毎に計算された各割合の大きさに応じて、各第二形態素情報の中から、一の第二形態素情報を選択することができるので、ロボット制御装置は、例えば、第一形態素情報(利用者の発話内容を構成する要素)が第二形態素情報に占める割合の大きい第二形態素情報を、複数ある第二形態素情報群の中から取得することができれば、第一形態素情報から構成される意味空間を踏襲した第二形態素情報をより的確に取得することができ、結果的に、その取得した第二形態素情報に基づいて利用者からの発話内容により近い動作を実行することができる。
【0012】
【発明の実施の形態】
[第一実施形態]
(会話制御システムの基本構成)
本発明に係る会話制御システムについて図面を参照しながら説明する。図1は、本実施形態に係る会話制御装置1を有する会話制御システムの概略構成図である。
【0013】
同図に示すように、会話制御装置1は、入力部100と、音声認識部200と、会話制御部300と、文解析部400と、会話データベース500と、出力部600と、音声認識辞書記憶部700とを備えている。
【0014】
尚、本実施形態では、説明の便宜上、利用者の発話内容(この発話内容は、入力情報の一種)に限定して説明するが、この利用者の発話内容に限定されるものではなく、キーボード等から入力された入力情報であってもよい。従って、以下に示す「発話内容」は、「発話内容」を「入力情報」に置き換えて説明することもできる。
【0015】
同様にして、後述の説明では、説明の便宜上、「発話文のタイプ」(発話種類)に限定して説明するが、この「発話文のタイプ」に限定されるのではなく、キーボードなどから入力された入力情報の種類を示す「入力種類」であってもよい。従って、以下に示す「発話文のタイプ」(発話種類)は、「発話種類」を「入力種類」に置き換えて説明することもできる。
【0016】
入力部100は、利用者からの入力情報を取得する取得手段であり、本実施形態では、マイクロホン、キーボード等が挙げられる。この入力部100は、利用者から入力された入力情報に基づいて、入力情報を示す文字列を特定する文字認識手段でもある。
【0017】
ここで、入力情報とは、キーボード等を通じて入力された文字、記号、音声等を意味するものである。具体的に、入力部100は、利用者の入力情報(音声以外)を取得し、取得した入力情報を会話制御部300に出力する。また、利用者からの発話内容(この発話内容は、音声からなるものであり、入力情報の一種である)をマイクロホンなどで取得した入力部100は、取得した発話内容を構成する音声を音声信号として音声認識部200に出力する。
【0018】
音声認識部200は、入力部100で取得した発話内容に基づいて、発話内容に対応する文字列を特定する文字認識手段である。具体的には、入力部100から音声信号が入力された音声認識部200は、入力された音声信号を解析し、解析した音声信号に対応する文字列を、音声認識辞書記憶部700に格納されている辞書を用いて特定し、特定した文字列を文字列信号として会話制御部300に出力する。音声認識辞書記憶部700は、標準的な音声信号に対応する辞書を格納しているものである。
【0019】
前記文解析部400は、入力部100又は音声認識部200で特定された文字列を解析するものであり、本実施形態では、図2に示すように、形態素抽出部410と、文節解析部420と、文構造解析部430と、発話種類判定部440と、形態素データベース450と、発話種類データベース460とを有している。
【0020】
形態素抽出部410は、入力部100又は音声認識部200で特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出する形態素抽出手段である。
【0021】
具体的に、管理部310から文字列信号が入力された形態素抽出部410は、入力された文字列信号に対応する文字列の中から各形態素を抽出する。ここで、形態素とは、本実施形態では、文字列に現された語構成の最小単位を意味するものとする。この語構成の最小単位としては、図3に示すように、例えば、名詞、形容詞、動詞などの品詞が挙げられる。各形態素は、本実施形態では、m1、m2、・・・、mlと表現する。
【0022】
即ち、形態素抽出部410は、入力された文字列信号に対応する文字列と、形態素データベース450に予め格納されている名詞、形容詞、動詞などの形態素群とを照合し、文字列の中から形態素群と一致する各形態素(m1、m2、・・・)を抽出し、抽出した各形態素を抽出信号として文節解析部420に出力する。
【0023】
文節解析部420は、形態素抽出部410で抽出された各形態素に基づいて、各形態素を文節形式に変換する変換手段である。具体的に、形態素抽出部410から抽出信号が入力された文節解析部420は、入力された抽出信号に対応する各形態素を用いて文節形式にまとめる。
【0024】
ここで、文節形式とは、本実施形態では、日本語文法において、自立語又は自立語に一つ以上の付属語がついた文、或いは、日本語文法の意味を崩さない程度に文字列をできるだけ細かく区切った一区切りの文を意味する。この文節は、本実施形態では、p1、p2、・・・pkと表現する。
【0025】
即ち、文節解析部420は、図4に示すように、入力された抽出信号に対応する各形態素に基づいて各形態素の係り受け要素(例えば、が(m2)・は(m4)・を(m5)・・)を抽出し、抽出した係り受け要素に基づいて各形態素を各文節にまとめることを行う。同図に示す「t」は、転置を意味する。
【0026】
各形態素を各文節にまとめた文節解析部420は、各形態素をまとめた各文節と、各文節を構成する各形態素とを含む文型情報を文型信号として文構造解析部430及び発話種類判定部440に出力する。
【0027】
文構造解析部430は、文節解析部420で分節された第一形態素情報の各形態素を主体格、対象格などの各属性に分類する分類手段である。具体的に、文節解析部420から文型信号が入力された文構造解析部430は、入力された文型信号に対応する各形態素と各形態素からなる文節とに基づいて、文節に含まれる各形態素の「格構成」を決定する。
【0028】
ここで、「格構成」とは、文節における実質的な概念を示す格(属性)を意味するものであり、本実施形態では、例えば、主語・主格を意味するサブジェクト(主体格)、対象を意味するオブジェクト(対象格)、動作を意味するアクション、時間を意味するタイム(テンス、アスペクト)、場所を意味するロケーション等が挙げられる。本実施形態では、サブジェクト、オブジェクト、アクションの三要素の「格」(格構成)に対応付けられた各形態素を第一形態素情報とする。
【0029】
即ち、文構造解析部430は、図5に示すように、例えば、各形態素の係り受け要素が”が”又は”は”である場合は、その係り受け要素の前にある形態素がサブジェクト(主語又は主格)であると判断する。また、文構造解析部430は、例えば、各形態素の係り受け要素が”の”又は”を”である場合は、その係り受け要素の前にある形態素がオブジェクト(対象)であると判断する。
【0030】
更に、文構造解析部430は、例えば、各形態素の係り受け要素が”する”である場合は、その係り受け要素の前にある形態素がアクション(述語;この述語は動詞、形容詞などから構成される)であると判断する。
【0031】
各文節を構成する各形態素の「格構成」を決定した文構造解析部430は、決定した「格構成」に対応付けられた第一形態素情報に基づいて、後述する話題(トピック)の範囲を特定させるための話題検索命令信号を反射的判定部320に出力する。
【0032】
発話種類判定部440は、文節解析部420で特定された文節に基づいて、発話内容(入力情報)の種類を示す発話種類(入力種類)を特定する種類特定手段である。具体的に、文節解析部420から入力された文型信号に対応する各形態素と各形態素から構成される文節とに基づいて、「発話文のタイプ」(発話種類)を判定する。
【0033】
ここで、「発話文のタイプ」は、本実施形態では、図6に示すように、陳述文(D;Declaration)、感想文(I;Impression)、条件文(C;Condition)、結果文(E;Effect)、時間文(T;Time)、場所文(L;Location)、反発文(N;Negation)などから構成されるものである。
【0034】
陳述文とは、利用者の意見又は考えなどからなる文を意味するものであり、本実施形態では、図6に示すように、例えば”佐藤が好きだ”などの文が挙げられる。感想文とは、利用者が抱く感想からなる文を意味するものである。場所文とは、場所的な要素からなる文を意味するものである。
【0035】
結果文とは、話題に対して文が結果の要素を含む文から構成されるものを意味する。時間文とは、話題に関わる時間的な要素を含む文から構成されるものを意味する。
【0036】
条件文とは、一つの発話を話題と捉えた場合に、話題の前提、話題が成立している条件や理由などの要素を含む文から構成されるものを意味する。反発文とは、発話相手に対して反発するような要素を含む文から構成されるものを意味する。各「発話文のタイプ」についての例文は、図6に示す通りである。
【0037】
即ち、発話種類判定部440は、入力された文型信号に対応する各文節に基づいて、その各文節と発話種類データベース460に格納されている各辞書とを照合し、各文節の中から、各辞書に関係する文要素を抽出する。各文節の中から各辞書に関係する文要素を抽出した発話種類判定部440は、抽出した文要素に基づいて、「発話文のタイプ」を判定する。文要素とは、文字列の種類を特定するための分の種別を意味し、文要素は、本実施形態では、上記説明した定義句(〜のことだ)などが挙げられる。
【0038】
ここで、上記発話種類データベース460は、図7に示すように、定義句(例えば、〜のことだ)に関係する辞書を備えた定義表現事例辞書、肯定句(例えば、賛成、同感、ピンポーン)に関係する辞書を備えた肯定事例辞書、結果句(例えば、それで、だから)に関係する辞書を備えた結果表現事例辞書、挨拶句(例えば、こんにちは)に関係する辞書を備えた挨拶事例辞書、否定句(例えば、馬鹿言うんじゃないよ、反対)に関係する辞書を備えた否定事例辞書などから構成され、各辞書は、「発話文のタイプ」と関連付けられている。
【0039】
これにより、発話種類判定部440は、文節と発話種類データベース460に格納されている各辞書とを照合し、文節の中から各辞書に関連する文要素を抽出し、抽出した文要素に関連付けられた判定の種類を参照することで、「発話文のタイプ」を判定することができる。
【0040】
この発話種類判定部440は、後述する話題検索部360からの指示に基づいて、該当する利用者に特定の回答文を検索させるための回答検索命令信号を回答文検索部370に出力する。
【0041】
前記会話データベース500は、一つの文字、複数の文字列又はこれらの組み合わせからなる各形態素を示す第二形態素情報と、発話内容に対する利用者への回答内容とを予め相互に関連付けて複数記憶する回答記憶手段(談話記憶手段)である。また、会話データベース500は、複数の回答内容に対応付けられた各回答内容の種類を示す回答種類を、第二形態素情報に関連付けて予め複数記憶する回答記憶手段(談話記憶手段)でもある。
【0042】
更に、会話データベース500は、利用者から入力されるであろう入力内容又は利用者への回答内容に関連性のある範囲を構成する形態素を示す談話範囲(キーワード)を予め複数記憶する談話記憶手段でもある。この談話範囲(キーワード)には、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素を示す第二形態素情報が複数関連付けられ、各第二形態素情報には、利用者への回答内容がそれぞれに関連付けてられている。
【0043】
更にまた、会話データベース500は、第二形態素情報を構成する各要素を、主格からなる主体各、目的格からなる対象格などの属性に分類して記憶する回答記憶手段(談話記憶手段)でもある。
【0044】
この会話データベース500は、図8に示すように、本実施形態では、大きく分けると、利用者から発話されるであろう発話内容又は利用者への回答内容について関連性のある範囲を意味する談話範囲(ディスコース)と、利用者が発話している内容に最も密接な関連性のある範囲を意味する話題(トピック)とから構成されている。同図に示すように、”談話範囲”は、本実施形態では、”話題”の上位概念として位置付けるものとする。
【0045】
各談話範囲は、図9に示すように、階層構造となるように構成することができる。同図に示すように、例えば、ある談話範囲(映画)に対する上位概念の談話範囲(娯楽)は、上の階層構造に位置するようにし、談話範囲(映画)に対する下位概念の談話範囲(映画の属性、上映映画)は、下の階層構造に位置するようにすることができる。即ち、各談話範囲は、本実施形態では、他の談話範囲との間で上位概念、下位概念、同義語、対義語の関係が明確となる階層位置に配置することかできる。
【0046】
上述の如く、談話範囲は、各話題から構成されるものであり、本実施形態では、例えば、談話範囲がA映画名であれば、A映画名に関係する複数の話題を含んでいる。
【0047】
この話題は、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素、即ち、利用者から発話されるであろう発話内容を構成する各形態素を意味するものであり、本実施形態では、サブジェクト(主体格)、オブジェクト(対象格)、アクションの「格」(属性)に対応付けられた各形態素からなるものである。これら三要素に対応付けられた各形態素は、本実施形態では、話題タイトル(この話題タイトルは、”話題”の下位概念に相当するものである)(第二形態素情報)と表現することにする。
【0048】
尚、話題タイトルには、上記三要素に対応付けられた各形態素に限定されるものではなく、他の「格」、即ち、時間を意味するタイム(テンス、アスペクト)、場所を意味するロケーション、条件を意味するコンディション、感想を意味するインプレッション、結果を意味するエフェクトなどに対応付けられた各形態素を有してもよい。
【0049】
この話題タイトル(第二形態素情報)は、本実施形態では、会話データベース500に予め格納されているものであり、上記第一形態素情報(利用者が発話した発話内容から導かれたもの)とは区別されるものである。
【0050】
例えば、話題タイトルは、談話範囲が”A映画名”である場合には、図10に示すように、サブジェクト(A映画名)、オブジェクト(監督)、アクション(素晴らしい){これは、”A映画名の監督は素晴らしい”を意味する}から構成されるものである。
【0051】
話題タイトルのうち、「格構成」(サブジェクト、オブジェクト、アクションなど)に対応付けられた形態素がない場合は、その部分については、本実施形態では、”*”を示すことにする。
【0052】
例えば、{A映画名って?}の文を話題タイトル(サブジェクト;オブジェクト;アクション)に変換すると、{A映画名って?}の文のうち、”A映画名”がサブジェクトとして特定することができるが、その他”オブジェクト””アクション”は文の要素になっていないので、話題タイトルは、”サブジェクト”(A映画名);”オブジェクト”なし(*);”アクション”なし(*)となる(図10参照)。
【0053】
回答文とは、利用者に対して回答する回答文(回答内容)を意味するものであり、本実施形態では、各話題タイトル(第二形態素情報)に関連付けられている(図8参照)。回答文は、本実施形態では、本実施形態では、図11に示すように、利用者から発話された発話文のタイプに対応した回答をするために、陳述文(D;Declaration)、感想文(I;Impression)、条件文(C;Condition)、結果文(E;Effect)、時間文(T;Time)、場所文(L;Location)、否定文(N;Negation)などのタイプ(回答種類)に分類されている。
【0054】
即ち、各回答文は、図12に示すように、例えば、談話範囲(佐藤){下位概念;ホームラン、上位概念;草野球、同義語;パンダ佐藤・佐藤選手・パンダ}及び各話題タイトルと関連付けられている。
【0055】
同図に示すように、例えば、話題タイトル1−1が{(佐藤;*;好きだ):これは、上述の如く(サブジェクト;オブジェクト;アクション)の順番からなるものである。この順番は、以下同様とする}である場合は、その話題タイトル1−1に対応する回答文1−1は、(DA;陳述肯定文”佐藤が好きです”)、(IA;感想肯定文”佐藤がとても好きです”)、(CA;条件肯定文”佐藤のホームランはとても印象的だからです”)、(EA;結果肯定文”いつも佐藤の出る試合をテレビ観戦してしまいます”)、(TA;時間肯定文”実は、甲子園での5打席連続敬遠から好きになっています”)、(LA;場所肯定文”打撃に立ったときの真剣な顔が好きですね”)、(NA;反発肯定文”佐藤を嫌いな人とは話したくないですね、さよなら”)などが挙げられる。
【0056】
前記会話制御部300は、本実施形態では、図2に示すように、管理部310と、反射的判定部320と、鸚鵡返し判定部330と、談話範囲決定部340と、省略文補完部350と、話題検索部360と、回答文検索部370とを有している。
【0057】
前記管理部310は、会話制御部300の全体を制御するものである。具体的に、入力部100又は音声認識部200から文字列が入力された管理部310は、入力された文字列を文字列信号として形態素抽出部410に出力する。また、管理部310は、回答文検索部370で検索された回答文を出力部600に出力する。
【0058】
反射的判定部320は、形態素抽出部410で抽出された第一形態素情報と各定型内容を照合し、各定型内容の中から、第一形態素情報を含む定型内容を検索する定型取得手段である。
【0059】
ここで、定型内容とは、利用者からの発話内容に対して定型的な内容を回答するための反射要素情報を意味し、この反射要素情報は、反射要素データベース801(定型記憶手段)に予め複数記憶されている。反射要素情報としては、本実施形態では、図13に示すように、例えば”おはよう”、”こんにちは”、”こんばんわ”、”やあ”などの「挨拶的要素」、「なるほど」、「本当?」などの「定型的要素」などが挙げられる。
【0060】
具体的に、文構造解析部430から話題検索命令信号が入力された反射的判定部320は、入力された話題検索命令信号に含まれる第一形態素情報と反射要素データベース801に記憶されている各反射要素情報とを照合し、各反射要素情報の中から、第一形態素情報を含む反射要素情報を検索し、検索した反射要素情報を管理部310に出力する。
【0061】
即ち、反射要素情報をD1、第一形態素情報をWとすると、反射的判定部320は、W∩D1≠φ(φ;空集合)の関係が成立していると判断した場合は、上記反射的な回答を行うための処理を行う。
【0062】
例えば、利用者が”おはよう”という発話内容を発した場合には、反射的判定部320は、発話内容”おはよう”と各反射要素情報とを照合し、各反射要素情報の中から、発話内容”おはよう”を含む(と一致する)反射要素情報”おはよう”を検索し、検索した反射要素情報”おはよう”を管理部310に出力する。
【0063】
反射的判定部320は、各反射要素情報の中から、発話内容を含む反射要素情報を検索することができない場合には、文構造解析部430から入力された話題検索命令信号を鸚鵡返し判定部330に出力する。
【0064】
鸚鵡返し判定部330は、形態素抽出部410で抽出された現在の第一形態素情報と、鸚鵡返し要素データベース802に記憶されている過去の回答内容とを照合し、現在の第一形態素情報が過去の回答内容に含まれる場合には、合意内容を取得する定型取得手段である。
【0065】
ここで、鸚鵡返しとは、本実施形態では、利用者の発話内容をそのまま(又はそれに近い内容を)言い返すことを意味する。鸚鵡返し要素は、本実施形態では、直前に会話制御装置1から出力された回答内容を構成する第一形態素情報などからなるのもであり、図14に示すように、例えば、”馬は美しい”(馬;*;美しい)、”佐藤が好きです”(佐藤;*;好きです)などが挙げられる。
【0066】
また、鸚鵡返し要素データベース802は、利用者から入力された入力情報に合意するための合意内容を予め記憶する合意記憶手段でもある。合意内容には、例えば、前回、利用者から入力された入力情報(利用者により前回の入力情報が”A映画名の監督はS氏ですか”である場合には、合意内容としては、”A映画名の監督はS氏です”)、又は ”その通りです”、”本当です”などが挙げられる。
【0067】
具体的に、反射的判定部320から話題検索命令信号が入力された鸚鵡返し判定部330は、各鸚鵡返し要素毎に、入力された話題検索命令信号に含まれる第一形態素情報と鸚鵡返し要素を構成する各形態素とを照合し、鸚鵡返し要素の中に第一形態素情報が含まれているかを判断する(図14参照)。
【0068】
鸚鵡返し判定部330は、各鸚鵡返し要素の中に第一形態素情報が含まれていると判断した場合には、合意内容を取得し、取得した合意内容からなる回答文を管理部310に出力(鸚鵡返し処理)する。即ち、鸚鵡返し要素(前回の回答文など)をS、第一形態素情報をWとすると、鸚鵡返し判定部330は、W⊂S、W≠φの関係が成立している場合には、上記に示す鸚鵡返し処理を行う。
【0069】
例えば、会話制御装置1が回答文として”A映画名の監督はS氏です”(A映画名の監督;S氏;*)(この順番は、サブジェクト;オブジェクト;アクションの順番、以下同様とする)を出力し、その後、利用者が出力された回答内容に対して”A映画名の監督はS氏ですか”(A映画名の監督;S氏;*)と発話した場合には、鸚鵡返し判定部330は、利用者の第一形態素情報(A映画名の監督;S氏;*)と回答文の各形態素(A映画名の監督;S氏;*)とが一致しているので、利用者は回答内容に対して鸚鵡返しを行っていると断定し、記憶されている合意内容”その通りです”などを取得し、取得した合意内容を出力する。
【0070】
また、鸚鵡返し判定部330は、形態素抽出部410で抽出された現在の第一形態素情報と、鸚鵡返し要素データベース802に記憶されている過去の第一形態素情報とを照合し、現在の第一形態素情報が過去の第一形態素情報に含まれる場合には、反発内容を取得する定型取得手段でもある。
【0071】
具体的には、利用者が”馬は美しい”という発話内容を発話し、会話制御装置1が回答内容として”馬は躍動感があって良いですね”の内容を出力した場合に、後に利用者が”馬は美しい”という発話内容を繰り返したときは、鸚鵡返し判定部330は、現在の発話内容”馬は美しい”を構成する各形態素(第一形態素情報){馬;*;美しい}と前の発話内容”馬は美しい”を構成する各形態素(第一形態素情報){馬;*;美しい}とが一致しているので、利用者は会話制御装置1からの回答内容”馬は躍動感があって良いですね”については全く聞いていないものと断定することができる。
【0072】
この場合、鸚鵡返し判定部330は、利用者が会話制御装置1からの回答内容を聞いていないので、記憶された反発内容(例えば、同じ内容を繰り返さないでよ”など)取得し、取得した反発内容を出力することができる。
【0073】
一方、鸚鵡返し判定部330は、第一形態素情報が前回の回答文の内容と同一、又は第一形態素情報が前回の第一形態素情報と同一でないと判断した場合には、反射的判定部320から入力された話題検索命令信号を談話範囲決定部340に出力する。
【0074】
尚、上記の鸚鵡返し判定部330は、「会話制御装置1の回答内容」に対して利用者が鸚鵡返しを行った場合の処理を示してきたが、更に以下の処理も行うことができる。例えば、出力部600が”馬は美しい”という回答文を出力した場合、この回答文に対して利用者が”どうして馬は美しいの?”、”どうして美しいの?”、又は”どうして?”と発話した場合に対して行う鸚鵡返し判定部330の処理である。
【0075】
この場合、鸚鵡返し判定部330は、出力した回答文S”馬は美しい”と利用者からの発話内容W(”どうして馬は美しいの?(疑問文)”又は”どうして美しいの?(疑問文)”)とを照合すると、(W−c)⊂S、S≠φ、c≠φ(このcは、Wの発話種類を意味し、この発話種類は、後述する発話種類判定部440で判定されるものである。発話種類には、後述するように、例えば、疑問文などが挙げられる。)の関係が成立するので、”条件付”の鸚鵡返し処理(回答内容に対して利用者が疑問文付きの鸚鵡返しを行った場合の処理)を行う。
【0076】
”条件付”の鸚鵡返し処理としては、例えば、会話制御装置1が”馬は美しいね”の回答文を出力した場合に、上記利用者が”どうして馬は美しいの?”の発話内容を発したときは、利用者の疑問等を解消するため、鸚鵡返し判定部330が”だって馬は美しいじゃない”などの回答文を鸚鵡返し要素データベース802の中から取得し、取得した回答文を管理部310に出力する処理を行う。
【0077】
談話範囲決定部340は、文節解析部420で抽出された第一形態素と各談話範囲とを照合し、各談話範囲の中から、第一形態素情報に含まれる形態素と一致する談話範囲を検索する談話検索手段である。
【0078】
具体的に、鸚鵡返し判定部330から話題検索命令信号が入力された談話範囲決定部340は、入力された談話検索命令信号に基づいて、利用者の談話範囲を決定する。即ち、談話範囲決定部340は、入力された検索命令信号に基づいて、会話データベース500の中から、利用者が発話している内容について関連性のある範囲(談話範囲)を検索する。
【0079】
例えば、談話範囲決定部340は、入力された話題検索命令信号に含まれる第一形態素情報が(面白い映画;*;ある){面白い映画はある?}である場合には、この第一形態素情報と談話範囲群とを照合し、談話範囲群に第一形態素情報を構成する形態素(例えば”映画”)が含まれているときは、第一形態素情報に含まれる”映画”を談話範囲として決定する。この場合、談話範囲決定部340は、第一形態素情報に談話範囲”映画”が含まれているので、入力された第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
【0080】
一方、談話範囲決定部340は、第一形態素情報に談話範囲群が含まれていない場合には、入力された第一形態素情報を話題検索命令信号に含めて省略文補完部350に出力する。
【0081】
これにより、後述する話題検索部360は、談話範囲決定部340で決定された”談話範囲”に属する各「話題タイトル」と、文構造解析部430で特定された第一形態素情報とを照合することができるので、”全て”の「話題タイトル」(第二形態素情報)と第一形態素情報とを照合する必要がなくなり、後述する回答文検索部370は、最終的な回答文を検索するまでの時間を短縮することができる。
【0082】
尚、談話範囲決定部340は、上記の如く、第一形態素情報と談話範囲群とを照合し、談話範囲群に第一形態素情報の形態素が含まれていれば、その形態素を談話範囲として決定していたが、これに限定されるものではなく、鸚鵡返し判定部330で直前に検索された鸚鵡返し要素の形態素、又は利用者が発話した発話内容を構成する形態素を談話範囲として決定しても良い。後述する省略文補完部350は、上記談話範囲決定部340で決定された談話範囲を用いて、その談話範囲を、形態素が省略されている第一形態素情報に付加することができる。
【0083】
省略文補完部350は、文節解析部420で抽出された第一形態素情報に基づいて第一形態素情報を構成する各属性(サブジェクト、オブジェクト、アクションなど)の中から、形態素を含まない属性を検索する属性検索手段である。また、省略文補完部350は、検索した属性に基づいて、属性に、談話範囲決定部340で検索された談話範囲を構成する形態素を付加する形態素付加手段でもある。
【0084】
具体的に、談話範囲決定部340から話題検索命令信号が入力された省略文補完部350は、入力された談話検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報からなる発話内容が省略文であるかを判定し、第一形態素情報からなる発話内容が省略文である場合には、第一形態素情報が属する談話範囲の形態素を、第一形態素情報に付加する。
【0085】
例えば、省略文補完部350は、入力された話題検索命令信号に含まれる第一形態素情報を構成する形態素が(監督;*;*)(監督は?)(この文は、”何の”監督であるかが不明であるので、省略文を意味する。)である場合には、談話範囲決定部340で決定された談話範囲(A映画名;このA映画名は映画のタイトルを示すものである)に属する第一形態素情報であれば、第一形態素情報を構成する形態素に、決定された談話範囲(A映画名)を第一形態素情報に付加(”A映画名”の監督;*;*)する。
【0086】
即ち、第一形態素情報をW、決定された談話範囲をDとすると、省略文補完部350は、Wに談話範囲Dを付加し、付加後の第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
【0087】
これにより、第一形態素情報が省略文であり、日本語として明解でない場合であっても、省略文補完部350は、第一形態素情報がある談話範囲に属している場合には、例えば、その談話範囲D(A映画名)を第一形態素情報W(監督;*;*)に付加し、第一形態素情報をW’(A映画名の監督;*;*){A映画名の監督は?}として扱うことができるので、利用者の発話内容が省略文である場合であっても、前に決定された談話範囲に基づいて省略文を補完することができ、省略文を明確にすることができる。
【0088】
このため、省略文補完部350が、第一形態素情報を構成する発話内容が省略文であっても、第一形態素情報を構成する発話内容が適正な日本語となるように、第一形態素情報に特定の形態素を補完することができるので、話題検索部360は、補完後の第一形態素情報に基づいて、第一形態素情報に関連する最適な「話題タイトル」(第二形態素情報)を取得することができ、回答文検索部370は、話題検索部360で取得された「話題タイトル」に基づいて利用者の発話内容により適した回答内容を出力することができる。
【0089】
話題検索部360は、文節解析部420で抽出された第一形態素情報又は省略文補完部350で補完された第一形態素情報と、各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を構成する形態素を含む第二形態素情報を検索する検索手段である。
【0090】
具体的に、談話範囲決定部340又は省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、談話範囲決定部340で決定された談話範囲に属する各「話題タイトル」(第二形態素情報)の中から、第一形態素情報の形態素を含む「話題タイトル」を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
【0091】
例えば、第一形態素情報を構成する「格構成」が(佐藤;*;好きだ){佐藤は好きだ}である場合には、話題検索部360は、図12に示すように、上記「格構成」に属する各形態素(佐藤;*;好きだ)と談話範囲(佐藤)に属する各話題タイトル1−1〜1−4とを照合し、各話題タイトル1−1〜1−4の中から「格構成」に属する各形態素(佐藤;*;好きだ)と一致(又は近似)する話題タイトル1−1(佐藤;*;好きだ)を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
【0092】
話題検索部360から検索結果信号が入力された発話種類判定部440は、入力された検索結果信号に基づいて、該当する利用者に対して回答する特定の回答文を検索させるための回答検索命令信号(この回答検索命令信号には、判定した「発話文のタイプ」も含まれる)を回答文検索部370に出力する。
【0093】
回答文検索部370は、話題検索部360で検索された第二形態素情報(話題タイトル)に基づいて、第二形態素情報に関連付けられた回答文を取得する回答取得手段である。また、回答文検索部370は、話題検索部360で検索された第二形態素情報に基づいて、特定された利用者の発話種類と第二形態素情報に関連付けられた各回答種類とを照合し、各回答種類の中から、利用者の発話種類と一致する回答種類を検索する第二検索手段でもある。
【0094】
具体的に、話題検索部360から検索結果信号と、発話種類判定部440から回答検索命令信号とが入力された回答文検索部370は、入力された検索結果信号に対応する話題タイトル(検索結果によるもの;第二形態素情報)と回答検索命令信号に対応する「発話文のタイプ」(発話種類)とに基づいて、その「話題タイトル」に関連付けられている回答文群(各回答内容)の中から、「発話文のタイプ」(DA、IA、CAなど)と一致する回答種類(この回答種類は、図11に示す「回答文のタイプ」を意味する)からなる回答文を検索する。
【0095】
例えば、回答文検索部370は、検索結果に対応する話題タイトルが図12に示す話題タイトル1−1(佐藤;*;好きだ)である場合は、その話題タイトル1−1に関連付けられている回答文1−1(DA、IA、CAなど)の中から、発話種類判定部440で判定された「発話文のタイプ」(例えばDA;発話種類)と一致する回答種類(DA)からなる回答文1−1(DA;(私も)佐藤が好きです)を検索し、この検索した回答文を回答文信号として管理部310に出力する。
【0096】
回答文検索部370から回答文信号が入力された管理部310は、入力された回答文信号を出力部600に出力する。また、反射的判定部320から反射要素情報、又は鸚鵡返し判定部330から鸚鵡返し処理の内容が入力された管理部310は、入力された反射要素情報に対応する回答文、入力された鸚鵡返し処理の内容に対応する回答文を出力部600に出力する。
【0097】
出力部600は、回答文検索部370で取得された回答文を出力する出力手段であり、本実施形態では、例えば、スピーカ、ディスプレイなどが挙げられる。具体的に、管理部310から回答文が入力された出力部600は、入力された回答文{例えば、私も佐藤が好きです}を出力する。
【0098】
(会話制御装置を用いた会話制御方法)
上記構成を有する会話制御装置1による会話制御方法は、以下の手順により実施することができる。図15は、本実施形態に係る会話制御方法の手順を示すフロー図である。
【0099】
先ず、入力部100が、利用者からの発話内容を取得するステップを行う(S101)。具体的に入力部100は、利用者の発話内容を構成する音声を取得し、取得した音声を音声信号として音声認識部200に出力する。また、入力部100は、利用者から入力された入力情報(音声以外)に基づいて、入力情報(音声以外)に対応する文字列を特定し、特定した文字列を文字列信号として会話制御部300に出力する。
【0100】
次いで、音声認識部200が、入力部100で取得した発話内容に基づいて、発話内容に対応する文字列を特定するステップを行う(S102)。具体的には、入力部100から音声信号が入力された音声認識部200は、入力された音声信号を解析し、解析した音声信号に対応する文字列を、音声認識辞書記憶部700に格納されている辞書を用いて特定し、特定した文字列を文字列信号として会話制御部300に出力する。
【0101】
そして、形態素抽出部410が、音声認識部200で特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するステップを行う(S103)。
【0102】
具体的に、管理部310から文字列信号が入力された形態素抽出部410は、入力された文字列信号に対応する文字列と、形態素データベース450に予め格納されている名詞、形容詞、動詞などの形態素群とを照合し、文字列の中から形態素群と一致する各形態素(m1、m2、・・・)を抽出し、抽出した各形態素を抽出信号として文節解析部420に出力する。
【0103】
そして、文節解析部420は、形態素抽出部410で抽出された各形態素に基づいて、各形態素を文節形式にまとめるステップを行う(S104)。具体的に、形態素抽出部410から抽出信号が入力された文節解析部420は、入力された抽出信号に対応する各形態素を用いて文節形式にまとめる。
【0104】
即ち、文節解析部420は、図4に示すように、入力された抽出信号に対応する各形態素に基づいて各形態素の係り受け要素(例えば、が・は・を・・)を抽出し、抽出した係り受け要素に基づいて各形態素を各文節にまとめることを行う。
【0105】
各形態素を各文節にまとめた文節解析部420は、各形態素をまとめた各文節と、各文節を構成する各形態素とを含む文型情報を文型信号として文構造解析部430及び発話種類判定部440に出力する。
【0106】
その後、文構造解析部430が、文節解析部420で分節された第一形態素情報の各形態素を主体格、対象格などの各属性に分類するステップを行う(S105)。具体的に、文節解析部420から文型信号が入力された文構造解析部430は、入力された文型信号に対応する各形態素と各形態素からなる文節とに基づいて、文節に含まれる各形態素の「格構成」を決定する。
【0107】
即ち、文構造解析部430は、図5に示すように、例えば、各形態素の係り受け要素が”が”又は”は”である場合は、その係り受け要素の前にある形態素がサブジェクト(主語又は主格)であると判断する。また、文構造解析部430は、例えば、各形態素の係り受け要素が”の”又は”を”である場合は、その係り受け要素の前にある形態素がオブジェクト(対象)であると判断する。
【0108】
更に、文構造解析部430は、例えば、各形態素の係り受け要素が”する”である場合は、その係り受け要素の前にある形態素がアクション(述語;この述語は動詞、形容詞などから構成される)であると判断する。
【0109】
各文節を構成する各形態素の「格構成」を決定した文構造解析部430は、決定した「格構成」に対応付けられた第一形態素情報に基づいて、後述する話題(トピック)の範囲を特定させるための話題検索命令信号を話題検索部360に出力する。
【0110】
次いで、発話種類判定部440は、文節解析部420で特定された文節に基づいて、発話内容の種類を示す発話種類を特定するステップを行う(S106)。具体的に、文節解析部420から入力された文型信号に対応する各形態素と各形態素から構成される文節とに基づいて、「発話文のタイプ」(発話種類)を判定する。
【0111】
即ち、発話種類判定部440は、入力された文型信号に対応する各文節に基づいて、その各文節と発話種類データベース460に格納されている各辞書とを照合し、各文節の中から、各辞書に関係する文要素を抽出する。各文節の中から各辞書に関係する文要素を抽出した発話種類判定部440は、抽出した文要素に基づいて、「発話文のタイプ」を判定する。
【0112】
この発話種類判定部440は、後述する話題検索部360からの指示に基づいて、該当する利用者に特定の回答文を検索させるための回答検索命令信号を回答文検索部370に出力する。
【0113】
次いで、反射的判定部320が、形態素抽出部410で抽出された第一形態素情報と各定型内容を照合し、各定型内容の中から、第一形態素情報を含む定型内容を検索するステップを行う(S107;反射的処理)。
【0114】
具体的に、文構造解析部430から話題検索命令信号が入力された反射的判定部320は、入力された話題検索命令信号に含まれる第一形態素情報と反射要素データベース801に記憶されている各反射要素情報(定型内容)とを照合し、各反射要素情報の中から、第一形態素情報を含む反射要素情報を検索し、検索した反射要素情報を管理部310に出力する。
【0115】
反射的判定部320は、各反射要素情報の中から、第一形態素情報を含む反射要素情報を検索することができない場合には、文構造解析部430から入力された話題検索命令信号を鸚鵡返し判定部330に出力する。
【0116】
次いで、鸚鵡返し判定部330が、形態素抽出部410で抽出された第一形態素情報と各鸚鵡返し要素を照合し、各鸚鵡返し要素の中から、第一形態素情報を含む鸚鵡返し要素を検索するステップを行う(S108;鸚鵡返し処理)。
【0117】
鸚鵡返し判定部330は、各鸚鵡返し要素の中に第一形態素情報が含まれていると判断した場合には、第一形態素情報を含む鸚鵡返し要素を取得し、取得した鸚鵡返し要素からなる回答文を管理部310に出力(鸚鵡返し処理)する。即ち、鸚鵡返し要素(前回出力された回答文、前回利用者が発話した発話内容など)をS、第一形態素情報をWとすると、鸚鵡返し判定部330は、W⊂S、W≠φの関係が成立している場合には、上記に示す鸚鵡返し処理を行う。
【0118】
一方、鸚鵡返し判定部330は、各鸚鵡返し要素の中に第一形態素情報が含まれていないと判断した場合には、反射的判定部320から入力された話題検索命令信号を談話範囲決定部340に出力する。
【0119】
そして、談話範囲決定部340が、文節解析部420で抽出された第一形態素と各談話範囲とを照合し、各談話範囲の中から、第一形態素情報を含む談話範囲を検索(決定)するステップを行う(S109)。
【0120】
具体的に、鸚鵡返し判定部330から話題検索命令信号が入力された談話範囲決定部340は、入力された検索命令信号に基づいて、会話データベース500の中から、利用者が発話している内容について関連性のある範囲(談話範囲)を検索する。
【0121】
例えば、談話範囲決定部340は、入力された話題検索命令信号に含まれる第一形態素情報が(面白い映画;*;ある){面白い映画はある?}である場合には、この第一形態素情報と談話範囲群とを照合し、談話範囲群に第一形態素情報を構成する形態素(例えば”映画”)が含まれているときは、第一形態素情報に含まれる”映画”を談話範囲として決定する。この場合、談話範囲決定部340は、第一形態素情報に談話範囲”映画”が含まれているので、入力された第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
【0122】
一方、談話範囲決定部340は、第一形態素情報に談話範囲群が含まれていない場合には、入力された第一形態素情報を話題検索命令信号に含めて省略文補完部350に出力する。
【0123】
次いで、省略文補完部350が、文節解析部420で抽出された第一形態素情報に基づいて第一形態素情報を構成する各属性(サブジェクト、オブジェクト、アクションなど)の中から、形態素を含まない属性を検索するステップを行う。その後、省略文補完部350が、検索した形態素を含まない属性に基づいて、その属性に、談話範囲決定部340で検索された談話範囲を構成する形態素を付加するステップを行う(S110;省略文を補完)。
【0124】
具体的に、談話範囲決定部340から話題検索命令信号が入力された省略文補完部350は、入力された談話検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報からなる発話内容が省略文であるかを判定し、第一形態素情報からなる発話内容が省略文である場合には、第一形態素情報が属する談話範囲の形態素を、第一形態素情報に付加する。
【0125】
例えば、省略文補完部350は、入力された話題検索命令信号に含まれる第一形態素情報を構成する形態素が(監督;*;*)(監督は?)(この文は、”何の”監督であるかが不明であるので、省略文を意味する。)である場合には、前に談話範囲決定部340で決定された談話範囲(A映画名;このA映画名とは映画のタイトルを示すものである)に属する第一形態素情報であれば、第一形態素情報を構成する形態素に、決定された談話範囲の形態素(A映画名)を第一形態素情報に付加(”A映画名”の監督;*;*)する。
【0126】
即ち、第一形態素情報をW、決定された談話範囲をDとすると、省略文補完部350は、第一形態素情報Wに談話範囲Dを付加し、付加後の第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
【0127】
次いで、話題検索部360が、文節解析部420で抽出された第一形態素情報又は省略文補完部350で補完された第一形態素情報と、各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を構成する形態素を含む第二形態素情報を検索するステップを行う(S111)。
【0128】
具体的に、談話範囲決定部340又は省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、談話範囲決定部340で決定された談話範囲に属する各「話題タイトル」(第二形態素情報)の中から、第一形態素情報の形態素を含む「話題タイトル」を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
【0129】
例えば、第一形態素情報を構成する「格構成」が(佐藤;*;好きだ){佐藤は好きだ}である場合には、話題検索部360は、図12に示すように、上記「格構成」に属する各形態素(佐藤;*;好きだ)と談話範囲(佐藤)に属する各話題タイトル1−1〜1−4とを照合し、各話題タイトル1−1〜1−4の中から「格構成」に属する各形態素(佐藤;*;好きだ)と一致(又は近似)する話題タイトル1−1(佐藤;*;好きだ)を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
【0130】
話題検索部360から検索結果信号が入力された発話種類判定部440は、入力された検索結果信号に基づいて、該当する利用者に対して回答する特定の回答文を検索させるための回答検索命令信号(この回答検索命令信号には、判定した「発話文のタイプ」も含まれる)を回答文検索部370に出力する。
【0131】
そして、回答文検索部370が、話題検索部360で検索された第二形態素情報に基づいて、特定された利用者の発話種類と第二形態素情報に関連付けられた各回答種類とを照合し、各回答種類の中から、利用者の発話種類と一致する回答種類を検索し、検索した回答種類に基づいて回答種類に関連付けられている回答文を取得するステップを行う(S112)。
【0132】
具体的に、話題検索部360から検索結果信号と、発話種類判定部440から回答検索命令信号とが入力された回答文検索部370は、入力された検索結果信号に対応する話題タイトル(検索結果によるもの;第二形態素情報)と回答検索命令信号に対応する「発話文のタイプ」(発話種類)とに基づいて、その「話題タイトル」に関連付けられている回答文群(各回答内容)の中から、「発話文のタイプ」(DA、IA、CAなど)と一致する回答種類(この回答種類は、図11に示す「回答文のタイプ」を意味する)からなる回答文を検索する。
【0133】
例えば、回答文検索部370は、検索結果に対応する話題タイトルが図12に示す話題タイトル1−1(佐藤;*;好きだ)である場合は、その話題タイトル1−1に関連付けられている回答文1−1(DA、IA、CAなど)の中から、発話種類判定部440で判定された「発話文のタイプ」(例えばDA;発話種類)と一致する回答種類(DA)からなる回答文1−1(DA;(私も)佐藤が好きです)を検索し、この検索した回答文を回答文信号として管理部310に出力する。
【0134】
次いで、回答文検索部370から回答文信号が入力された管理部310は、入力された回答文信号を出力部600に出力する。また、反射的判定部320から反射要素情報、又は鸚鵡返し判定部330から鸚鵡返し処理の内容が入力された管理部310は、入力された反射要素情報に対応する回答文、入力された鸚鵡返し処理の内容に対応する回答文を出力部600に出力する(S113)。管理部310から回答文が入力された出力部600は、入力された回答文{例えば、私も佐藤が好きです}を出力する。
【0135】
(会話制御装置及び会話制御方法による作用及び効果)
上記構成を有する本願に係る発明によれば、反射的判定部320が、利用者から発話された発話内容を構成する第一形態素情報と予め記憶された各定型内容とを照合し、各定型内容の中から、第一形態素情報を含む定型内容を検索することができるので、反射的判定部320は、例えば第一形態素情報が”こんにちは”などの定型内容である場合には、この定型内容と同一の定型内容”こんにちは”等を回答することができる。
【0136】
また、反射的判定部320は、利用者の発話内容が定型内容である場合には、その定型内容(挨拶など)を回答するので、利用者は、最初に、会話制御装置1との間で意思の疎通をしているような感覚を味わうことができる。
【0137】
また、鸚鵡返し判定部330が、現在の第一形態素情報と過去の回答内容とを照合し、現在の第一形態素情報が過去の回答内容に含まれていない場合には、予め記憶してある合意内容を取得することができるので、鸚鵡返し判定部330は、利用者から現在入力された入力情報と過去の回答内容とが一致していれば、利用者が過去の回答内容に対して鸚鵡返し(利用者が回答内容に対して聞き直していること)の入力情報を入力したものと断定することができる。
【0138】
この場合、鸚鵡返し判定部330は、利用者が過去の回答内容に対して鸚鵡返しを行っているので、記憶されている合意内容を取得し、取得した合意内容(例えば、”その通りです”など)を出力することができる。これにより、利用者は、会話制御装置1から出力された回答内容の意味が分からなければ、もう一度聞き直して、再度回答内容を聞き直すことができるので、恰も他の利用者と会話しているような感覚を味わうことができる。
【0139】
また、鸚鵡返し判定部330が、現在の第一形態素情報と過去の第一形態素情報とを照合し、現在の第一形態素情報が過去の第一形態素情報に含まれる場合には、反発内容を取得することができるので、鸚鵡返し判定部330は、前回入力された入力情報が今回入力された入力情報に含まれている場合には、利用者が前の入力情報と同一の内容を反復して入力したものと判断することができ、利用者が会話制御装置からの回答内容に対して適切に回答していないものと断定することができる。
【0140】
この場合、鸚鵡返し判定部330は、利用者が前回の回答内容に対して適切に回答していないので、利用者に対して反発するため、記憶されている反発内容を取得し、取得した反発内容を出力する。これにより、利用者は、会話制御装置1からの回答内容に対して適切な入力情報を入力しなければ、会話制御装置1から反発内容が出力されるので、恰も他の利用者と会話しているような感覚を味わうことができる。
【0141】
また、話題検索部360は、第一形態素情報と近似する第二形態素情報を検索するには、”談話範囲”に属する各第二形態素情報と第一形態素情報とを照合すればよく、”全て”の第二形態素情報と第一形態素情報とを照合する必要がないので、第一形態素情報と近似している第二形態素情報を検索するまでの時間を短縮することができる。
【0142】
この結果、話題検索部360が、第一形態素情報と近似している第二形態素情報を短時間で検索(ピンポイント検索)することができるので、回答文検索部370は、話題検索部360で検索された第二形態素情報に基づいて第二形態素情報に関連付けられている回答文を短時間で取得することができ、会話制御装置1は、利用者からの発話内容に対して迅速に回答することができる。
【0143】
また、話題検索部360が、各第二形態素情報の中から、第一形態素情報を構成する形態素(利用者の発話内容を構成する要素)を含む第二形態素情報を検索し、回答文検索部370が、話題検索部360で検索された第二形態素情報に基づいて、第二形態素情報に関連付けられた回答内容を取得することができるので、回答文検索部370は、利用者の発話内容を構成する各形態素(第一形態素情報)に基づいて、各形態素により構築される意味空間(主体、対象等)を考慮し、かかる意味空間に基づいて予め作成された回答内容を取得することができることとなり、単に発話内容の全体をキーワードとして、そのキーワードに関連付けられた回答内容を取得するよりも、より発話内容に適した回答内容を取得することができる。
【0144】
また、話題検索部360は、第一形態素情報を含む第二形態素情報を検索するので、利用者の発話内容と完全に一致する第二形態素情報を検索する必要がなく、会話制御装置1を開発する開発者は、利用者から発話されるであろう発話内容に対応する膨大な回答内容を予め記憶する必要がなくなり、記憶部の容量を低減させることができる。
【0145】
更に、回答文検索部370が、”談話範囲”に属する各第二形態素情報に関連付けられた回答種類(陳述、肯定、場所、反発など)の中から、利用者の発話種類と一致する回答種類を検索し、検索した回答種類に基づいて回答種類に対応付けられた回答内容を取得することができるので、会話制御装置1は、利用者の会話内容を構成する発話種類、例えば、利用者が単に意見を述べたもの、利用者が抱く感想からなるもの、利用者が場所的な要素を述べたものなどに基づいて、複数の回答内容の中から利用者の発話種類にマッチした回答内容を取得することができることとなり、該当する利用者に対してより最適な回答をすることができる。
【0146】
更にまた、回答文検索部370は、談話範囲決定部340で検索された”談話範囲”にのみ属する各第二形態素情報に関連付けられた回答種類の中から、利用者の発話種類と一致する回答種類を検索(ピンポイント検索が可能)するだけでよいので、”全て”の第二形態素情報に関連付けられた回答種類と利用者の発話種類とを逐一検索する必要がなくなり、利用者の発話種類に対応する最適な回答内容を短時間で取得することができる。
【0147】
最後に、省略文補完部350は、利用者の発話内容を構成する第一形態素情報が省略文であり、日本語として明解でない場合であっても、第一形態素情報がある談話範囲に属している場合には、その談話範囲を第一形態素情報に付加し、省略文からなる第一形態素情報を補完することができる。
【0148】
これにより、省略文補完部350は、第一形態素情報を構成する発話内容が省略文であっても、第一形態素情報を構成する発話内容が適正な日本語となるように、第一形態素情報に特定の形態素(談話範囲を構成する形態素など)を補完することができるので、話題検索部360は、省略文補完部350で補完された補完後の第一形態素情報に基づいて、第一形態素情報に関連する最適な第二形態素情報を取得することができ、回答文検索部370は、話題検索部360で取得された第二形態素情報に基づいて利用者の発話内容により適した回答内容を出力することができる。
【0149】
この結果、会話制御装置1は、利用者からの入力情報が省略文であったとしても、ニューロネットワーク、AI知能などの機能を用いることなく、過去の検索結果を通じて、その省略文が何を意味するのかを推論することができ、会話制御装置1の開発者は、ニューロネットワーク、AI知能を搭載する必要がないので、会話制御装置1のシステムをより簡便に構築することができる。
【0150】
[変更例]
尚、本発明は、上記実施形態に限定されるものではなく、以下に示すような変更を加えることができる。
【0151】
(第一変更例)
本変更例においては、会話データベース500は、複数の形態素の集合からなる集合群の全体を示す要素情報を、集合群に関連付けて複数記憶する要素記憶手段であってもよい。更に、形態素抽出部410は、文字列から抽出した形態素と各集合群とを照合し、各集合群中から、抽出された形態素を含む集合群を選択し、選択した集合群に関連付けられた要素情報を第一形態素情報として抽出してもよい。
【0152】
図16に示すように、利用者が発話した文字列に含まれる各形態素には、類似しているものがある。例えば、図16に示すように、集合群の全体を示す要素情報を「贈答」とすると、「贈答」は、プレゼント、贈り物、御歳暮、御中元、お祝いなど(集合群)と相互に類似しているので、形態素抽出部410は、「贈答」に類似する形態素(上記のプレゼントなど)がある場合には、その類似する形態素については、「贈答」として取り扱うことができる。
【0153】
即ち、形態素抽出部410は、例えば、文字列から抽出した形態素が「プレゼント」である場合には、図16に示すように、「プレゼント」を代表する要素情報が「贈答」であるので、上記「プレゼント」を「贈答」に置き換えることができる。
【0154】
これにより、形態素抽出部410が相互に類似する形態素を整理することができるので、会話制御装置を開発する開発者は、相互に類似した各第一形態素情報から把握される意味空間に対応した第二形態素情報及び第二形態素情報に関係する回答内容を逐一作成する必要がなくなり、結果的に、記憶部に格納させるデータ量を低減させることができる。
【0155】
(第二変更例)
図17に示すように、本変更例においては、割合計算部361と、選択部362とを話題検索部360に備えてもよい。
【0156】
割合計算部361は、形態素抽出部410で抽出された第一形態素情報と各第二情報とを照合し、各第二形態素情報毎に、第二形態素情報に対して第一形態素情報が占める割合を計算する計算手段である。
【0157】
具体的に、文構造解析部430から話題検索命令信号が入力された割合計算部361は、図17に示すように、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報と会話データベース500に格納されている談話範囲に属する各話題タイトル(第二形態素情報)とを照合し、各話題タイトル毎に、それぞれの話題タイトルの中に、第一形態素情報が占める割合を計算する。
【0158】
例えば、図18に示すように、利用者から発話された発話文を構成する第一形態素情報が(佐藤;*;好きだ){佐藤は好きだ}である場合は、割合計算部361は、「格構成」に属する各形態素(佐藤;*;好きだ)と話題タイトルに含まれる各形態素(佐藤;*;好きだ)とを照合し、上記話題タイトルに、「格構成」に属する各形態素(佐藤;*;好きだ)が含まれる割合を、100%であると計算する。割合計算部361は、これらの計算を話題タイトル毎に行い、計算した各割合を割合信号として選択部362に出力する。
【0159】
選択部362は、割合計算部361で各第二形態素情報毎に計算された各割合の大きさに応じて、各第二形態素情報の中から、一の第二形態素情報を選択する選択手段である。
【0160】
具体的に、割合計算部361から割合信号が入力された選択部362は、入力された割合信号に含まれる各割合(「格構成」の要素/「話題タイトル」の要素×100)の中から、例えば割合の高い話題タイトルを選択する(図18参照)。割合の高い話題タイトルを選択した選択部362は、選択した話題タイトルを検索結果信号として回答文検索部370及び発話種類判定部440に出力する。回答文検索部370は、選択部362で選択された話題タイトルに基づいて、話題タイトルに関連付けられた回答文を取得する。
【0161】
これにより、選択部362が、各第二形態素情報毎に、第二形態素情報に対して該第一形態素情報が占める割合を計算し、各第二形態素情報毎に計算された各割合の大きさに応じて、各第二形態素情報の中から、一の第二形態素情報を選択することができるので、選択部362は、例えば、第一形態素情報(利用者の発話内容を構成するもの)が第二形態素情報に占める割合の大きい第二形態素情報を、複数ある第二形態素情報群の中から取得することができれば、第一形態素情報から把握される意味空間を踏襲した第二形態素情報をより的確に取得することができ、結果的に、回答文検索部370は、利用者の発話内容に対して最適な回答をすることができる。
【0162】
また、選択部362は、複数の話題タイトルの中から、割合計算部361で計算された割合の高い話題タイトルを選択することができるので、利用者の発話文に含まれる「格構成」に属する各形態素と会話データベース500に格納されている各話題タイトルとが完全に一致しなくても、「格構成」に属する各形態素に密接する話題タイトルを取得することができる。
【0163】
この結果、選択部362が第一形態素情報を構成する「格構成」に密接する話題タイトルを取得することができるので、会話制御装置1を開発する開発者は、第一形態素情報を構成する「格構成」と完全に一致する話題タイトルを会話データベース500に逐一格納する必要がなくなるので、会話データベース500の容量を低減させることができる。
【0164】
更に、割合計算部361は、談話範囲決定部340で検索された”談話範囲”にのみ属する各第二形態素情報毎に、第二形態素情報に対して該第一形態素情報が占める割合を計算するので、”全て”の第二形態素情報に対して第一形態素情報が占める割合を計算する必要がなくなり、第一形態素情報から構成される意味空間を踏襲した第二形態素情報をより短時間で取得することができ、結果的に、取得した第二形態素情報に基づいて利用者からの発話内容に対しての最適な回答内容を迅速に出力することができる。
【0165】
尚、割合計算部361は、分類された各属性に属する第一形態素情報の各形態素と、予め記憶された各属性に属する各第二形態素情報の各形態素とを各属性毎に照合し、各第二形態素情報の中から、少なくとも一の属性に第一形態素情報の各形態素を含む第二形態素情報を検索する第一検索手段であってもよい。
【0166】
具体的に、話題検索命令信号が入力された割合計算部361は、入力された話題検索命令信号に含まれる「格構成」の各「格」(サブジェクト;オブジェクト;アクション)毎に、その「格」に属する各形態素と、同一の「格」からなる話題タイトルの「格」に属する各形態素とを照合し、互いの「格」を構成する形態素が同一か否かを判定する。
【0167】
例えば、図19に示すように、割合計算部361は、「格構成」の「格」の形態素が(犬;人;噛んだ){犬が人を噛んだ}である場合は、それらの形態素”犬”、”人”、”噛んだ”と、それらの形態素を構成する「格」と同一の「格」からなる話題タイトルの形態素”犬”、”人”、”噛んだ”とを照合し、話題タイトルを構成する各形態素”犬”、”人”、”噛んだ”のうち、各形態素に対応する「格」と同一の「格」からなる「格構成」の形態素”犬”、”人”、”噛んだ”と一致している割合を算出(100%)する。
【0168】
もし、話題タイトルを構成する要素が(人;犬;噛んだ){人が犬を噛んだ}である場合には、割合計算部361は、上記と同様の手順により、二つの格に属する形態素が異なるので、「格構成」を構成する形態素と「話題タイトル」との「格」毎の一致度を33%であると算出する(図19参照)。
【0169】
割合を計算した割合計算部361は、各割合の中から、割合の高い話題タイトルを選択し、選択した話題タイトルを検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
【0170】
これにより、割合計算部361が、分類された各「格構成」(主体格、対象格など)に属する第一形態素情報の各形態素と、予め記憶された話題タイトルとを各「格」毎に照合し、各話題タイトルの中から、少なくとも一の「格」に第一形態素情報の各形態素を含む第二形態素情報を検索することができるので、割合計算部361は、通常の語順とは異なるものから構成される発話内容、例えば”人が犬を噛む”である場合には、主体格の形態素が”人”、対象格の形態素が”犬”であることから、その各「格」と一致する第二形態素情報を検索することができ、その第二形態素情報(人;犬;噛む)に関連付けられている回答内容{”本当に?”又は”意味がよくわかんないよ”など}を取得することができる。
【0171】
即ち、割合計算部361は、識別が困難な発話内容、例えば”人が犬を噛む”と”犬が人を噛む”とを識別することができるので、その識別した発話内容に最適な回答、前者については例えば”本当に?”、後者については例えば”大丈夫?”をすることができる。
【0172】
また、割合計算部361は、”談話範囲”に属する各第二形態素情報の中から、少なくとも一の属性に第一形態素情報の形態素を含む第二形態素情報を検索すればよいので、”全て”の第二形態素情報の中から、一の第二形態素情報を取得する必要がなくなり、第一形態素情報から構成される意味空間を踏襲した第二形態素情報をより短時間で取得することができ、結果的に、会話制御装置1は、取得した第二形態素情報に基づいて利用者からの発話内容に対しての最適な回答内容を迅速に出力することができる。
【0173】
尚、選択部362は、予め定められた優先順位に従って各話題タイトルの中から、一の話題タイトルを選択してもよい。この優先順位とは、話題タイトルとして選出されるための優先度を意味するものである。この優先順位は、開発段階で開発者が予め定めるものである。
【0174】
(第三変更例)
図20に示すように、本変更例においては、上記実施形態及び各変更例に限定されるものではなく、会話制御装置1a,1bにある通信部800と、通信ネットワーク1000を介してデータの送受信をするための通信部900と、通信部900に接続された各会話データベース500b〜500dと、サーバ2a〜2cとを備えてもよい(会話制御システム)。
【0175】
ここで、通信ネットワーク1000とは、データを送受信する通信網を意味するものであり、本実施形態では、例えば、インターネットなどが挙げられる。尚、本変更例では、便宜上、会話データベース500b〜500d、サーバ2a〜2cを限定しているが、これに限定されるものではなく、更に他の会話データベースを設けてもよい。
【0176】
これにより、会話制御部300は、会話制御装置1aの内部に配置してある会話データベース500aのみならず、その他の会話制御装置1b、他の会話データベース500b〜500d、サーバ2a〜2cをも参照することができるので、例えば、会話データベース500aの中から、話題検索命令信号に含まれる「格構成」に属する各形態素(第一形態素情報)と関連する談話範囲等を検索することができない場合であっても、その他の会話制御装置1b、会話データベース500b〜500d、サーバ2a〜2cを参照することにより、上記「格構成」と関連する談話範囲等を検索することができ、利用者の発話文により適した回答文を検索することができる。
【0177】
(第四変更例)
文構造解析部430は、特定した第一形態素情報を構成する各「格構成」及び各「格構成」に対応付けられた各形態素を会話データベース500に記憶するものであってもよい。回答文検索部370は、検索した回答文を構成する各「格構成」及び各「格構成」に対応付けられた各形態素を会話データベース500に記憶するものであってもよい。
【0178】
談話範囲決定部340は、検索した談話範囲を会話データベース500に記憶するものであってもよい。話題検索部360は、検索した第二形態素情報を会話データベース500に記憶するものであってもよい。
【0179】
上記第一形態素情報と、第二形態素情報と、第一形態素情報又は第二形態素情報を構成する各「格構成」及び各「格構成」に対応付けられた各形態素と、検索した回答文を構成する各「格構成」及び各「格構成」に対応付けられた各形態素と、検索した談話範囲とは、それらを相互に関連付けて履歴形態素情報として会話データベース500又は鸚鵡返し要素データベース802に記憶することができる。
【0180】
省略文補完部350は、文節解析部420で抽出された第一形態素情報に基づいて第一形態素情報を構成する各属性(サブジェクト、オブジェクト、アクションなど;格構成)の中から、形態素を含まない属性を検索し、検索した属性に基づいてその属性に、会話データベース500又は鸚鵡返し要素データベース802に記憶された履歴形態素情報を付加する。
【0181】
具体的に、談話範囲決定部340から話題検索命令信号が入力された省略文補完部350は、入力された談話検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報からなる発話内容が省略文であるかを判定し、第一形態素情報からなる発話内容が省略文(例えば、サブジェクト、オブジェクト、又はアクションに所定の形態素を有しないなど)である場合には、会話データベース500又は鸚鵡返し要素データベース802に記憶されている履歴形態情報を、第一形態素情報に付加する。
【0182】
即ち、履歴形態情報に含まれるサブジェクトをS1、オブジェクトをO1、アクションA1、談話範囲をD1とし、省略された第一形態素情報をWとすると、補完後の第一形態素情報W1は、S1∪W、O1∪W、A1∪W、又はD1∪Wとして表現することができる。
【0183】
話題検索部360は、省略文補完部350で補完された第一形態素情報W1と各第二形態素情報とを照合し、各「話題タイトル」(第二形態素情報)の中から、第一形態素情報W1を含む第二形態素情報を検索し、検索した話題タイトルを検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
【0184】
これにより、第一形態素情報からなる発話内容が省略文であり、日本語として明解でない場合であっても、省略文補完部350は、会話データベース500に記憶されている履歴形態情報を用いて、省略された第一形態素情報の形態素を補完することができるので、省略された第一形態素情報からなる発話内容を明確にすることができる。
【0185】
このため、省略文補完部350が、第一形態素情報を構成する発話内容が省略文である場合には、第一形態素情報からなる発話内容が適正な日本語となるように、第一形態素情報に省略された形態素を補完することができるので、話題検索部360は、形態素が補完された第一形態素情報に基づいて、その第一形態素情報と関連する最適な「話題タイトル」(第二形態素情報)を取得することができ、回答文検索部370は、話題検索部360で取得された最適な「話題タイトル」に基づいて、利用者の発話内容により適した回答内容を出力することができる。
【0186】
(第五変更例)
話題検索部360は、図21に示すように、削除部363と、談話付加部364とを備えてもよい。削除部363は、検索した第二形態素情報に基づいて、第二形態素情報と談話範囲決定部340で検索された談話範囲とを照合し、第二形態素情報を構成する各形態素の中から、談話範囲と一致する形態素を削除する削除手段である。
【0187】
具体的に、省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報と、談話範囲決定部340で決定された談話範囲に属する各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報と一致する第二形態素情報を検索する。
【0188】
そして、削除部363は、検索された第二形態素情報に基づいて、その第二形態素情報と談話範囲決定部340で決定された談話範囲を構成する形態素とを照合し、第二形態素情報の中から、談話範囲を構成する形態素と一致する形態素を削除し、形態素が削除された第二形態素情報を削除信号として談話付加部364に出力する。
【0189】
即ち、削除部363は、第二形態素情報を構成する各形態素t1から、談話範囲決定部340で決定された現在の談話範囲D2(このD2は、形態素からなるものである)を取り除く(取り除いた結果をt2とすると、t2=t1−D2)。
【0190】
談話付加部364は、削除部363で形態素が削除された第二形態素情報に基づいて、談話範囲決定部340で検索された談話範囲に関連付けられた他の談話範囲を取得し、取得した他の談話範囲を構成する形態素を、第二形態素情報に付加する談話付加手段である。
【0191】
具体的には、現在の談話範囲D2が回答文K1と関連性のある談話範囲をDKとすると、回答文K1又は現在の談話範囲D2と関連性(兄弟関係にあるもの)のある他の談話範囲D3は、D3=D2∪DKとして表現することができるので、他の談話範囲D3を構成する形態素を付加した後の第二形態素情報W2は、W2=t2∪D3とすることができる。
【0192】
例えば、第二形態素情報を構成する各形態素t1が(A映画名;*;面白い){A映画名は面白い?}であり、談話範囲決定部340で決定された現在の談話範囲D2が(A映画名)である場合には、削除部363は、先ず、各形態素t1(A映画名;*;面白い)から談話範囲D2(A映画名)を削除し、削除した結果をt2(*;*;面白い)とする(t2=t1−D2)。
【0193】
現在の談話範囲D2(A映画名)と関連性のある他の談話範囲D3が”B映画名”である場合には、他の談話範囲D3を構成する形態素を付加した後の第二形態素情報W2は、t2∪D3であるので、(B映画名;*;面白い){B映画名は面白い?}とすることができる。
【0194】
これにより、利用者の発話内容が”A映画名は面白い?”である場合には、談話付加部364は、利用者の発話内容を構成する各形態素(A映画名;*;面白い)と一致する第二形態素情報(A映画名;*;面白い)を、他の第二形態素情報(B映画名;*;面白い){B映画名は面白い?}に変更することができるので、回答文検索部370は、談話付加部364で変更された第二形態素情報に関連付けられた回答文(例えば、”B映画名は面白いよ”)を取得し、取得した回答文を出力することができる。
【0195】
この結果、回答文検索部370は、利用者の発話内容に対する回答文を直接的に出力するわけではないが、談話付加部364で付加された形態素を含む第二形態素情報に基づいて、発話内容に関連する回答文を出力することができるので、出力部600は、回答文検索部370で検索された回答文に基づいて、さらに人間味のある回答文を出力することができる。
【0196】
尚、談話付加部364は、形態素が削除された第二形態素情報に他の談話範囲を付加するものだけに限定されるものではなく、形態素が削除された第二形態素情報に履歴形態素情報(会話データベース500に記憶されている)を付加するものであってもよい。
【0197】
(第六変更例)
話題検索部360は、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報を検索することができない場合に、第一形態素情報と各回答内容とを照合し、各回答内容の中から、第一形態素情報を含む回答内容を検索することができたときは、検索した回答内容に関連付けられている第二形態素情報を取得する第一検索手段であってもよい。
【0198】
具体的に、省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報と各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報と一致する第二形態素情報を取得することができない場合には、図22に示すように、第一形態素情報と、第二形態素情報に関連付けられている回答文とを照合する。
【0199】
この照合により、話題検索部360は、回答文の中に第一形態素情報を構成する形態素(アクション又はアクションに対応付けられた形態素)が含まれていると判断した場合には、その回答文に関連付けられている第二形態素情報を検索する。
【0200】
これにより、話題検索部360は、各第二形態素情報の中から、第一形態素情報と一致する第二形態素情報を検索することができなくても、各回答文の中から、第一形態素情報を構成する形態素(アクション又はアクションに対応付けられた形態素)を含む回答文を特定し、この特定した回答文に関連付けられている第二形態素情報を検索することができるので、利用者の発話内容を構成する第一形態素情報に対応する第二形態素情報を適切に検索することができる。
【0201】
この結果、話題検索部360が第一形態素情報に対応する最適な第二形態素情報を検索することができるので、回答文検索部370は、話題検索部360で検索された最適な第二形態素情報に基づいて、利用者の発話内容に対する適切な回答内容を取得することができる。
【0202】
[プログラム]
上記会話制御システム及び会話制御方法で説明した内容は、パーソナルコンピュータ等の汎用コンピュータにおいて、所定のプログラム言語を利用するための専用プログラムを実行することにより実現することができる。
【0203】
ここで、プログラム言語としては、利用者が求める話題、ある事柄に対する利用者の感情度、又は陳述文、肯定文、疑問文、反発文などの種類をその意味内容に応じて形態素と関連付けて階層的にデータベースに蓄積するための言語、本実施形態では、例えば、発明者らが開発したDKML(Discourse Knowledge Markup Language)、XML(eXtensible Markup Language)、C言語等が挙げられる。
【0204】
即ち、会話制御装置1は、各会話データベース500a〜500dに格納されているデータ(第二形態素情報、定型内容、回答文、回答種類、集合群、談話範囲、要素情報などの記憶情報)、その他の各部を、DKML(Discourse Knowledge Markup Language)、XML(eXtensible Markup Language)等で構築し、この構築した記憶情報等を利用するためのプログラムを実行することにより実現することができる。
【0205】
このような本実施形態に係るプログラムによれば、利用者の発話内容を構成する各形態素を特定し、特定した各形態素から把握される意味内容を解析して、解析した意味内容に関連付けられている予め作成された回答内容を出力することで、利用者の発話内容に対応する最適な回答内容を出力することができるという作用効果を奏する会話制御装置、会話制御システム及び会話制御方法を一般的な汎用コンピュータで容易に実現することができる。
【0206】
また、会話制御装置1を開発する開発者は、利用者の発話内容に対する回答内容を検索するための第二形態素情報等を、データベースにおいて前記言語を用いて階層的に構築することができるので、会話制御装置1は、利用者の発話内容に基づいて発話内容に対する回答内容を、階層的な手順を経てデータベースから取得することができる。
【0207】
即ち、会話制御装置1は、利用者の発話内容の階層(例えば、データベースに蓄積されている第二形態素情報に対して上位概念にあるのか、又は下位概念にあるのか)を見極めて、見極めた階層に基づいて予め蓄積された各回答内容の中から、適切な回答内容を取得することができる。
【0208】
このため、会話制御装置1は、利用者の発話内容からなる第一形態素情報と、予め記憶されている”全て”の第二形態素情報とを逐一照合することなく、ある特定の階層に属する各第二形態素情報と第一形態素情報とを照合すればよいので、第一形態素情報と近似する第二形態素情報を短時間で取得することができる。
【0209】
更に、上記通信部800と通信部900との間の通信は、通信ネットワーク1000を介して、DKML等からなるプロトコルによってデータを送受信してもよい。これにより、会話制御装置1は、例えば、会話制御装置1に利用者の発話内容に適した回答内容がない場合には、通信ネットワーク1000を通じて、DKML等の約束事に従って、利用者の発話内容に適した回答内容(DKMLなどで記述されたもの)を検索し、検索した回答内容を取得することができる(図20参照)。
【0210】
尚、プログラムは、記録媒体に記録することができる。この記録媒体は、図23に示すように、例えば、ハードディスク1100、フレキシブルディスク1200、コンパクトディスク1300、ICチップ1400、カセットテープ1500などが挙げられる。このようなプログラムを記録した記録媒体によれば、プログラムの保存、運搬、販売などを容易に行うことができる。
【0211】
[第二実施形態]
(ロボット制御装置の基本構成)
本発明の第二実施形態について図面を参照しながら説明する。図24は、本実施形態に係るロボット制御装置3の内部構造を示したものである。同図に示すように、ロボット制御装置3は、第一実施形態における会話制御装置1の内部構造とほぼ同じであるが、回答文検索部370に替えて動作命令取得部371及び各駆動部610〜650を有する点で相違する。
【0212】
この相違する点以外は、第一実施形態及び変更例の構造と同じであるので、相違する点以外の構造についての説明は省略する。これら以外にも、第一実施形態及び変更例で示した各部が備えられているが、それらの各部についての説明は省略する。
【0213】
第一実施形態では、会話制御装置1が、利用者からの発話内容に基づいて、発話内容に対応する最適な回答文を取得する処理について説明したが、本実施形態では、複数の関節のそれぞれに配備された電動モータが、利用者から発せられた発話内容に基づいて関節を駆動させるものであって、動作命令取得部371が、利用者からの発話内容に基づいて、発話内容に関連する動作を出力部600で行わせるという点で相違する(図25参照)。具体的な説明は以下の通りである。
【0214】
前記動作命令取得部371は、談話範囲決定部340で検索された談話範囲に基づいて、談話範囲に関連付けられた第一の動作命令を取得する動作命令取得手段である。具体的に、談話範囲決定部340から話題検索命令信号が入力された動作命令取得部371は、入力された話題検索命令信号に含まれる決定された談話範囲に基づいて、談話範囲に関連付けられた第一の動作命令を会話データベース500の中から取得する。
【0215】
ここで、利用者から入力されるであろう発話内容又は利用者への回答内容に関連性のある形態素を示す談話範囲には、少なくとも一つの電動モータで関節を駆動させることによって、その談話範囲を構成する形態素の意味内容に関係する一連の動作を行わせるための第一の動作命令が関連付けられており、会話データベース500(談話記憶手段)は、その談話範囲を予め複数記憶している。第一の動作命令は、本実施形態では、図26に示すように、談話範囲に関連付けられた動作パターンを意味する。
【0216】
即ち、会話データベース500には、同図に示すように、本実施形態では、各談話範囲A〜Dのそれぞれに動作パターン1〜4が関連付けられている。この動作パターンは、上記の如く、少なくとも一つの電動モータで関節を駆動させることによって、談話範囲を構成する形態素の意味内容に関係する一連の動作を行わせるための命令を意味するものである。例えば、図27に示すように、談話範囲が”野球”であれば、その談話範囲”野球”には、野球に関係する連続的な動作をさせるための一連の命令を示す動作パターン1が関連付けられている。
【0217】
この動作パターン1は、図27に示すように、本実施形態では、例えば、「肩部」→「腕部」→「腰部」→「腰が回動」の順番に各部(関節)を駆動させるための命令である。即ち、動作パターン1は、出力部600にある各駆動部610〜650を用いて、肩部を動かす肩駆動部650により肩を上方向に駆動させ、そして、腕部を動かす腕駆動部610により腕を曲げる方向に駆動させ、その後、腰部を動かす腰駆動部640により腰を水平方向に回動させ、更に、その腰駆動部640により腰を正又は逆方向に回動させるための命令を意味する。この一連の動作は、野球選手がバットをスイングしているような態様を想起させるものである(図27に示す「動作態様」を参照)。
【0218】
その他には、図27に示すように、談話範囲が”水泳”であれば、その談話範囲”水泳”には、水泳に関係する連続的な動作をさせるための命令を示す動作パターン2が関連付けられている。即ち、動作パターン2は、同図に示すように、本実施形態では、例えば、肩駆動部650により肩部を回動させるための命令であり、その動作は、水泳選手がクロールをしているような態様を想起させるものである。
【0219】
更には、同図に示すように、談話範囲が”陸上”であれば、その談話範囲”陸上”には、陸上に関係する連続的な動作をさせるための命令を示す動作パターン3が関連付けられている。即ち、動作パターン3は、同図に示すように、本実施形態では、例えば、腕駆動部610により腕を曲げる方向に駆動させ、そして、肩駆動部650により肩を回動させ、更には、その肩駆動部650の回動を連続させるような動作をさせるための命令であり、その動作は、陸上選手が走っているような態様を想起させるものである。
【0220】
具体的に、談話範囲決定部340から話題検索命令信号が入力された動作命令取得部371は、例えば、入力された話題検索命令信号に対応する談話範囲(例えば、図26に示す”談話範囲A”)に基づいて、その談話範囲Aに関連付けられた動作パターン1を会話データベース500の中から取得する。
【0221】
この動作パターン1を取得した動作命令取得部371は、図27に示すように、本実施形態では、取得した動作パターン1に基づいて、肩駆動部650により肩を上方向に駆動させるための命令を肩駆動部650に出力し、そして、腕駆動部610により腕を曲げる方向に駆動させるための命令を腕駆動部610に出力し、その後、腰駆動部640により腰を水平方向に回動させるための命令を腰駆動部640に出力し、更にその腰駆動部640により腰を正又は逆方向に回動させるための命令を腰駆動部640に出力する。
【0222】
出力部600は、動作命令取得部371で取得された第一の動作命令に基づいて、各駆動部610〜650のそれぞれに配備されている電動モータで各関節を駆動させることによって、その第一の動作命令に対応する一連の動作を実行する駆動手段であり、本実施形態では、腕駆動部610と、膝駆動部620と、首駆動部630と、腰駆動部640と、肩駆動部650とを有している。
【0223】
具体的に、動作命令取得部371から各種命令が入力された各駆動部610〜650は、入力された各種命令に基づいて、電動モータで関節を駆動させて、その各種命令に対応する一連の動作を実行する。尚、各駆動部610〜650は、例えばステッピングモータなどの電動モータを所定の角度分だけ回転させることにより、該当する関節を駆動させることができる。
【0224】
尚、動作命令取得部371は、話題検索部360で検索された話題タイトルに基づいて、話題タイトルに関連付けられた動作パターンを取得する動作取得手段であってもよい。ここで、利用者から入力されるであろう発話内容又は利用者への回答内容に関連性のある形態素を示す談話範囲には、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素を示す話題タイトルが複数関連付けられ、各話題タイトルには、少なくとも一つの電動モータで関節を駆動させることによって、各話題タイトルの意味内容に関係する一連の動作を行わせるための第二の動作命令がそれぞれに関連付けてられており、会話データベース500は、その談話範囲を複数記憶している。この第二の動作命令は、本実施形態では、話題タイトルに関連付けられた動作パターンを意味するものとする。
【0225】
即ち、会話データベース500には、図29に示すように、本実施形態では、各話題タイトル1〜nのそれぞれに動作パターン1〜nが関連付けられている。この動作パターンは、上記の如く、少なくとも一つの電動モータで関節を駆動させることによって、話題タイトルを構成する形態素の意味内容に関係する一連の動作をさせるための命令を意味するものである。
【0226】
例えば、談話範囲が(野球)であり、話題タイトルが(審判官;ストライクである;判断した){審判官がストライクであると判断した}であれば、野球の審判官がストライクであることを指し示すような態様を各駆動部610〜650にさせるための命令が挙げられる。
【0227】
その他には、談話範囲が(野球)であり、話題タイトルが(審判官;アウトである;判断した){審判官がアウトであると判断した}であれば、この動作パターンとしては、野球の審判官がアウトであることを指し示すような態様を各駆動部610〜650にさせるための命令が挙げられる。更には、談話範囲が(野球)であり、話題タイトルが(審判官;セーフである;判断した){審判官がセーフであると判断した}であれば、この動作パターンとしては、野球の審判官がセーフであることを指し示すような態様を各駆動部610〜650にさせるための命令が挙げられる。
【0228】
具体的に、話題検索部360から検索結果信号が入力された動作命令取得部371は、例えば、入力された検索結果信号に対応する話題タイトル(例えば、話題タイトル1)に基づいて、その話題タイトル1に関連付けられた動作パターン1を取得し、取得した動作パターン1を管理部310に出力する。管理部310から動作パターン1が入力された各駆動部610〜650は、上記と同様に、入力された動作パターン1に対応する各種命令に基づいて、該当する電動モータで関節を駆動させることによって、その動作パターン1に対応する一連の動作を実行する。
【0229】
尚、割合計算部361が、各話題タイトル毎に、話題タイトルに対して第一形態素情報が占める割合を計算し、選択部362が、各話題タイトル毎に計算された各割合の大きさに応じて、各話題タイトルの中から、一の話題タイトルを選択してもよい(図17参照)。
【0230】
この場合は、選択部362が、例えば、第一形態素情報(利用者の入力情報を構成する要素)が話題タイトルに占める割合の大きい話題タイトルを、複数ある話題タイトル群の中から取得することができれば、選択部362は、第一形態素情報から構成される意味空間を踏襲した話題タイトルをより的確に取得することができ、結果的に、動作命令取得部371は、その取得した話題タイトルに基づいて利用者からの発話内容により近い動作を行わせるための動作パターンを取得することができる。
【0231】
(ロボット制御装置を用いたロボット制御方法)
上記構成を有するロボット制御装置によるロボット制御方法は、以下の手順により実施することができる。図30は、本実施形態に係る会話制御方法の手順を示すフロー図である。
【0232】
同図に示すように、先ず、入力部100が、利用者から入力された発話内容を取得するステップを行う(S201)。そして、形態素抽出部410が、入力部100で取得された発話内容に基づいて、発話内容を構成する文字列を特定し、特定した文字列の中から各形態素を抽出するステップを行う(S202、S203)。
【0233】
その後、文節解析部420が、形態素抽出部410で抽出された各形態素に基づいて、各形態素を文節形式にまとめるステップを行う(S204)。一つの文節形式に属する各形態素は、本実施形態では、まとめて第一形態素情報とする。S201〜S204の処理は、第一実施形態で説明したS101〜S104の処理と同じである。このため、これらの処理についての詳細な説明は省略する。
【0234】
次いで、談話範囲決定部340が、抽出した第一形態素情報と、会話データベースに500に記憶されている各談話範囲群とを照合し、各談話範囲群の中から、第一形態素情報に含まれる形態素と一致する談話範囲を取得することができた場合には、動作命令取得部371は、その談話範囲に関連付けられた動作パターンを会話データベース500の中から取得する(S205、S206)。
【0235】
具体的に、談話範囲決定部340から話題検索命令信号が入力された動作命令取得部371は、入力された話題検索命令信号に談話範囲が含まれている場合には、その談話範囲(例えば、図26に示す”談話範囲A”)に基づいて、その談話範囲Aに関連付けられた動作パターン1を会話データベース500の中から取得する。
【0236】
この動作パターン1を取得した動作命令取得部371は、図27に示すように、本実施形態では、例えば、取得した動作パターン1に基づいて、肩駆動部650により肩を上方向に駆動させるための命令を肩駆動部650に出力し、そして、腕駆動部610により腕を曲げる方向に駆動させるための命令を腕駆動部610に出力し、その後、腰駆動部640により腰を水平方向に回動させるための命令を腰駆動部640に出力し、更にその腰駆動部640により腰を正又は逆方向に回動させるための命令を腰駆動部640に出力する。その後、動作命令取得部371から各種命令が入力された各駆動部610〜650は、入力された各種命令に基づいて該当する電動モータで関節を駆動させることによって、その各種命令に対応する一連の動作を実行する。
【0237】
(ロボット制御装置及びロボット制御方法による作用及び効果)
上記構成を有する発明によれば、動作命令取得部371が、談話範囲決定部340で検索された談話範囲に基づいて、談話範囲に関連付けられた第一の動作命令を取得し、各駆動部610〜650が、動作命令取得部371で取得された動作パターンに基づいて、該当する電動モータで関節を駆動させることによって、その動作パターンに対応する一連の動作を実行するので、ロボット制御装置3は、利用者からの発話内容に関係する一連の動作を実行することで、恰もコミュニケーションを取っているかのような印象を利用者に与えさせることができる。
【0238】
即ち、動作パターン(第一の動作命令)が、少なくとも一の電動モータで関節を駆動させることによって、上記談話範囲の意味内容に関連する一連の動作を行わせるための命令であるため、動作命令取得部371は、利用者からの発話内容に上記談話範囲が含まれていれば、その談話範囲の意味内容に関連する動作パターンを取得することができ、各駆動部610〜650は、その取得された動作パターンに基づいて、該当する電動モータで関節を駆動させて、その動作パターンに対応する一連の動作を実行することができる。
【0239】
これにより、例えば、談話範囲が”野球”であり、その談話範囲”野球”に関連付けられた動作パターンがその”野球”の意味内容に関連する動作を各駆動部610〜650にさせるための命令であれば、ロボット制御装置3は、”野球”に関連付けられた動作パターンに基づいて、該当する電動モータで関節を駆動させることによって、野球選手がバットを振っているような動作を実行することができる。
【0240】
更に、動作命令取得部371が、話題検索部360で検索された話題タイトルに基づいて、話題タイトルに関連付けられた動作パターン(第2の動作命令)を取得し、各駆動部610〜650が、動作命令取得部371で取得された動作パターンに対応する一連の動作を実行することができるので、各駆動部610〜650は、話題検索部360で検索された話題タイトルに基づいて、利用者からの発話内容により近い内容を示した一連の動作を実行することができる。
【0241】
更にまた、割合計算部361が、各話題タイトル毎に、話題タイトルに対して該第一形態素情報が占める割合を計算し、選択部362が、各話題タイトル毎に計算された各割合の大きさに応じて、各話題タイトルの中から、一の話題タイトルを選択することができる。
【0242】
これにより、選択部362は、例えば、第一形態素情報が話題タイトルに占める割合の大きい話題タイトルを、複数ある話題タイトル群の中から取得することができれば、第一形態素情報から構成される意味空間を踏襲した話題タイトルをより的確に取得することができ、結果的に、各駆動部610〜650は、選択部362で取得された話題タイトルに関連付けられた動作パターンに基づいて、利用者からの発話内容により近い動作を実行することができる。
【0243】
【発明の効果】
以上説明したように、本発明によれば、利用者から取得した発話内容に基づいて、その発話内容に関係する一連の動作をすることができ、恰もコミュニケーションを取っているかのような印象を利用者に与えさせることができる。
【図面の簡単な説明】
【図1】第一実施形態に係る会話制御システムの概略構成を示すブロック図である。
【図2】第一実施形態における会話制御部及び文解析部の内部構造を示すブロック図である。
【図3】第一実施形態における形態素抽出部で抽出する各形態素の内容を示す図である。
【図4】第一実施形態における文節解析部で抽出する各文節の内容を示す図である。
【図5】第一実施形態における文構造解析部で特定する「格」の内容を示す図である。
【図6】第一実施形態における発話種類判定部で特定する「発話文のタイプ」を示す図である。
【図7】第一実施形態における発話種類データベースで格納する各辞書の内容を示す図である。
【図8】第一実施形態における会話データベースの内部で構築される階層構造の内容を示す図である。
【図9】第一実施形態における会話データベースの内部で構築される階層構造の詳細な関係を示す図である。
【図10】第一実施形態における会話データベースの内部で構築される「話題タイトル」の内容を示す図である。
【図11】第一実施形態における会話データベースの内部で構築される「話題タイトル」に関連付けられている「回答文のタイプ」の内容を示す図である。
【図12】第一実施形態における会話データベースの内部で構築される「談話範囲」に属する「話題タイトル」及び「回答文」の内容を示す図である。
【図13】第一実施形態における反射要素データベースで記憶する反射要素情報の内容を示す図である。
【図14】第一実施形態における鸚鵡返し要素データベースで記憶する鸚鵡返し要素、鸚鵡返し要素の形態素の内容を示す図である。
【図15】第一実施形態に係る会話制御方法の手順を示すフロー図である。
【図16】第一変更例における形態素抽出部で整理する発話内容を示す図である。
【図17】第二変更例における話題検索部の内部構成を示す図である。
【図18】第二変更例における割合計算部が「格構成」に属する各形態素と各「話題タイトル」とを「話題タイトル」毎に照合する様子を示す図である。
【図19】第二変更例における割合計算部が「各構成」に属する各形態素と「話題タイトル」に属する各形態素とを「格」毎に照合する様子を示す図である。
【図20】第三変更例における会話制御システムの概略構成を示す図である。
【図21】第五変更例における話題検索部の内部構成を示す図である。
【図22】第六変更例における話題検索部が第一形態素情報と、話題タイトル又は回答文とを照合する様子を示す図である。
【図23】第一実施形態におけるプログラムを格納する記録媒体を示す図である。
【図24】第二実施形態に係るロボット制御装置の内部構成を示す図である(その1)。
【図25】第二実施形態に係るロボット制御装置の内部構成を示す図である(その2)。
【図26】第二実施形態における会話データベースの内部で構築される談話範囲群の階層構造の詳細な関係を示す図である(その1)。
【図27】第二実施形態における談話範囲に関連付けられている動作パターンの内容を示す図である。
【図28】第二実施形態における動作パターン1が各駆動部に指令する一連の動作命令の内容を示す図である。
【図29】第二実施形態における会話データベースの内部で構築される談話範囲群の階層構造の詳細な関係を示す図である(その2)。
【図30】第二実施形態に係るロボット制御方法の手順を示すフロー図である。
【符号の説明】
1…会話制御装置、2…サーバ、3…ロボット制御装置、100…入力部、200…音声認識部、300…会話制御部、310…管理部、320…反射的判定部、330…判定部、340…談話範囲決定部、350…省略文補完部、360…話題検索部、361…割合計算部、362…選択部、363…削除部、364…談話付加部、370…回答文検索部、371…動作命令取得部、400…文解析部、410…形態素抽出部、420…文節解析部、430…文構造解析部、440…発話種類判定部、450…形態素データベース、460…発話種類データベース、500…会話データベース、600…出力部、610…腕駆動部、620…膝駆動部、630…首駆動部、640…腰駆動部、650…肩駆動部、700…音声認識辞書記憶部、800…通信部、801…反射要素データベース、802…鸚鵡返し要素データベース、900…通信部、1000…通信ネットワーク、1100…ハードディスク、1200…フレキシブルディスク、1300…コンパクトディスク、1400…ICチップ、1500…カセットテープ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a robot control device, a robot control method, and a program in which an electric motor provided in each of a plurality of joints drives a joint based on the content of a speech uttered by a user.
[0002]
[Prior art]
Conventionally, there are voice robots that respond to voices uttered by users. This voice robot can function as a kind of advertising doll if it is installed in a place where many people come and go, such as a pachinko game hall. In addition, if a person living alone installs a voice robot at home and speaks toward the voice robot, the voice robot moves in response to the utterance. You can enjoy watching and enjoy the loneliness of living alone.
[0003]
[Problems to be solved by the invention]
However, the voice robot performs only one action (for example, only the action of the neck) in response to the voice emitted from the user, and the user feels something unsatisfactory with respect to the voice robot. . On the other hand, there are voice robots that currently perform a plurality of series of actions in response to voices uttered by users, but these voice robots are predetermined regardless of the utterance contents uttered by the users. It is merely a matter of executing a plurality of motion patterns (for example, moving in the order of neck → arm → waist), and does not satisfy the user's heart.
[0004]
Therefore, the present invention has been made in view of the above points, and based on the utterance contents uttered by the user, a robot control device, a robot control method, and a robot control method capable of causing a series of operations related to the utterance contents, and Provide a program.
[0005]
[Means for Solving the Problems]
The invention according to the present application has been made to solve the above-described problem, and the discourse range indicating morphemes related to the utterance content or the response content to the user that will be input by the user is at least The first operation command for performing a series of operations related to the semantic contents of the morphemes constituting the discourse range by driving the joint with one electric motor is associated, and a plurality of discourse ranges are stored in advance. Based on the utterance content input from the user, the character string indicating the utterance content is specified, and each morpheme constituting the minimum unit of the character string is extracted as the first morpheme information based on the specified character string. The extracted first morpheme information and each discourse range are collated, and from each discourse range, a discourse range that matches the morpheme included in the first morpheme information is searched, and based on the searched discourse range, Talk The first operation command associated with the range is acquired, and a series of operations corresponding to the first operation command is executed by driving the joint with the electric motor based on the acquired first operation command. It is characterized by doing.
[0006]
According to such an invention according to the present application, the robot control device searches the discourse range that matches the morpheme included in the first morpheme information from each discourse range, and based on the searched discourse range, the discourse range The robot control device performs a series of operations corresponding to the first operation command by acquiring the first operation command associated with the first motor command and driving the joint with the corresponding electric motor. By executing a series of actions related to the utterance content, it is possible to give the user the impression that the niece is also communicating.
[0007]
That is, since the first operation command is a command for performing a series of operations related to the meaning content of the above-mentioned conversation range, the robot control device includes the above-mentioned conversation range in the utterance content from the user. Then, a series of operations related to the meaning content of the discourse range can be performed. For example, if the conversation range is “baseball”, the robot control device can perform an operation as if the robot control device is swinging a bat as an operation related to the meaning content of the baseball. As a result, the robot control device executes an operation related to the utterance content uttered by the user, so that the user can feel as if he / she is communicating with the robot control device.
[0008]
In the above configuration, the discourse range indicating the morpheme related to the utterance content that will be input by the user or the response content to the user consists of one character, a plurality of character strings, or a combination thereof. A plurality of second morpheme information indicating morphemes are associated, and each second morpheme information is caused to perform a series of operations related to the semantic content of the second morpheme information by driving a joint with at least one electric motor. Each second morpheme information is associated with each of the second morpheme information and the extracted first morpheme information, and the second morpheme information The second morpheme information including the first morpheme information is searched from inside, and the second operation command associated with the second morpheme information is obtained based on the second morpheme information searched by the search means. , Based on the second operation command obtained by driving the joint by the electric motor, it is possible to perform a series of operations corresponding to the second operation command.
[0009]
In this case, the robot control device collates each second morpheme information associated with the searched discourse range with the extracted first morpheme information, and from each second morpheme information, the first morpheme information Second morpheme information including the second morpheme information is obtained, the second operation command associated with the second morpheme information is acquired, and the joint is driven by the corresponding electric motor, Since the robot controller performs a series of actions corresponding to the second action command, the robot controller may perform a series of actions showing contents closer to the utterance contents from the user based on the searched second morpheme information. it can.
[0010]
Furthermore, in the above configuration, the extracted first morpheme information and each second morpheme information are collated, and for each second morpheme information, the ratio of the first morpheme information to the second morpheme information is calculated, According to the size of each ratio calculated for each second morpheme information, one second morpheme information is selected from each second morpheme information, and based on the selected second morpheme information, A second operation command associated with the dimorphic information can be obtained.
[0011]
In this case, the robot controller calculates the ratio of the first morpheme information to the second morpheme information for each second morpheme information, and calculates the ratio of each ratio calculated for each second morpheme information. Since one second morpheme information can be selected from each second morpheme information according to the size, the robot control device can, for example, provide the first morpheme information (elements constituting the user's utterance content). ) Is acquired from a plurality of second morpheme information groups, the second morpheme information that follows the semantic space composed of the first morpheme information. Can be acquired more accurately, and as a result, an operation closer to the utterance content from the user can be executed based on the acquired second morpheme information.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
[First embodiment]
(Basic configuration of conversation control system)
A conversation control system according to the present invention will be described with reference to the drawings. FIG. 1 is a schematic configuration diagram of a conversation control system having a conversation control apparatus 1 according to the present embodiment.
[0013]
As shown in the figure, the conversation control device 1 includes an input unit 100, a speech recognition unit 200, a conversation control unit 300, a sentence analysis unit 400, a conversation database 500, an output unit 600, and a speech recognition dictionary storage. Part 700.
[0014]
In the present embodiment, for convenience of explanation, the description is limited to the user's utterance content (this utterance content is a kind of input information), but is not limited to the user's utterance content, and the keyboard. The input information may be input from the above. Therefore, the “utterance content” shown below can be described by replacing “utterance content” with “input information”.
[0015]
Similarly, in the following description, for convenience of explanation, the description will be limited to the “spoken sentence type” (speech type), but is not limited to this “spoken sentence type”, and input from a keyboard or the like. It may be an “input type” indicating the type of input information. Accordingly, the following “speech sentence type” (speech type) can be described by replacing “speech type” with “input type”.
[0016]
The input unit 100 is an acquisition unit that acquires input information from a user. In the present embodiment, a microphone, a keyboard, and the like are used. The input unit 100 is also a character recognition unit that specifies a character string indicating input information based on input information input from a user.
[0017]
Here, the input information means characters, symbols, voices and the like input through a keyboard or the like. Specifically, the input unit 100 acquires user input information (other than voice), and outputs the acquired input information to the conversation control unit 300. Further, the input unit 100 that has acquired the utterance content from the user (the utterance content is composed of voice and is a kind of input information) with a microphone or the like, the voice constituting the acquired utterance content is a voice signal. To the voice recognition unit 200.
[0018]
The voice recognition unit 200 is a character recognition unit that identifies a character string corresponding to the utterance content based on the utterance content acquired by the input unit 100. Specifically, the speech recognition unit 200 to which a speech signal is input from the input unit 100 analyzes the input speech signal, and a character string corresponding to the analyzed speech signal is stored in the speech recognition dictionary storage unit 700. The specified character string is output to the conversation control unit 300 as a character string signal. The speech recognition dictionary storage unit 700 stores a dictionary corresponding to standard speech signals.
[0019]
The sentence analysis unit 400 analyzes a character string specified by the input unit 100 or the speech recognition unit 200. In the present embodiment, as shown in FIG. 2, a morpheme extraction unit 410 and a phrase analysis unit 420 are included. A sentence structure analysis unit 430, an utterance type determination unit 440, a morpheme database 450, and an utterance type database 460.
[0020]
The morpheme extraction unit 410 is a morpheme extraction unit that extracts each morpheme constituting a minimum unit of a character string as first morpheme information based on the character string specified by the input unit 100 or the speech recognition unit 200.
[0021]
Specifically, the morpheme extraction unit 410 to which the character string signal is input from the management unit 310 extracts each morpheme from the character string corresponding to the input character string signal. Here, in this embodiment, the morpheme means the minimum unit of the word structure represented in the character string. As the minimum unit of the word structure, as shown in FIG. 3, for example, parts of speech such as nouns, adjectives and verbs can be cited. In the present embodiment, each morpheme is expressed as m1, m2,.
[0022]
That is, the morpheme extraction unit 410 collates a character string corresponding to the input character string signal with a morpheme group such as nouns, adjectives, and verbs stored in advance in the morpheme database 450, and the morpheme is extracted from the character string. Each morpheme (m1, m2,...) That matches the group is extracted, and each extracted morpheme is output to the phrase analysis unit 420 as an extraction signal.
[0023]
The phrase analysis unit 420 is a conversion unit that converts each morpheme into a phrase format based on each morpheme extracted by the morpheme extraction unit 410. Specifically, the phrase analysis unit 420 to which the extraction signal is input from the morpheme extraction unit 410 uses the morphemes corresponding to the input extraction signal to combine them into a phrase format.
[0024]
Here, in this embodiment, the phrase format is a sentence in which the independent grammar or one or more attached words are attached to the independent grammar in the Japanese grammar, or a character string that does not destroy the meaning of the Japanese grammar. Means a sentence that is separated as finely as possible. This clause is expressed as p1, p2,... Pk in this embodiment.
[0025]
That is, the phrase analysis unit 420, as shown in FIG. 4, based on each morpheme corresponding to the input extracted signal, the dependency element of each morpheme (for example, (m2), (m4), (m5) ) ・ ・) Is extracted, and each morpheme is grouped into each phrase based on the extracted dependency elements. “T” shown in the figure means transposition.
[0026]
The phrase analysis unit 420 that collects each morpheme into each phrase includes a sentence structure analysis unit 430 and an utterance type determination unit 440 using sentence pattern information including each phrase that combines each morpheme and each morpheme constituting each phrase as a sentence pattern signal. Output to.
[0027]
The sentence structure analysis unit 430 is a classification unit that classifies each morpheme of the first morpheme information segmented by the phrase analysis unit 420 into attributes such as subject case and target case. Specifically, the sentence structure analysis unit 430, to which the sentence pattern signal is input from the phrase analysis unit 420, determines each morpheme included in the phrase based on each morpheme corresponding to the input sentence pattern signal and the phrase composed of each morpheme. Determine the “case composition”.
[0028]
Here, the “case structure” means a case (attribute) indicating a substantial concept in the clause. In the present embodiment, for example, a subject (subject) that represents a subject / subject, Examples include a meaning object (target case), an action meaning an action, a time meaning (tense, aspect), a location meaning a place, and the like. In this embodiment, each morpheme associated with the “case” (case configuration) of the three elements of the subject, the object, and the action is used as the first morpheme information.
[0029]
That is, as shown in FIG. 5, for example, when the dependency element of each morpheme is “” or “is”, the sentence structure analysis unit 430 applies the subject (subject) to the morpheme before the dependency element. Or a leading character). For example, when the dependency element of each morpheme is “NO” or “NO”, the sentence structure analysis unit 430 determines that the morpheme before the dependency element is an object (target).
[0030]
Further, for example, when the dependency element of each morpheme is “Yes”, the sentence structure analysis unit 430 includes an action (predicate; this predicate is composed of a verb, an adjective, and the like). It is determined that
[0031]
The sentence structure analysis unit 430 that has determined the “case structure” of each morpheme that constitutes each clause determines the range of topics (topics) to be described later based on the first morpheme information associated with the determined “case structure”. A topic search command signal for specifying is output to the reflective determination unit 320.
[0032]
The utterance type determination unit 440 is a type specifying unit that specifies an utterance type (input type) indicating the type of utterance content (input information) based on the phrase specified by the phrase analysis unit 420. Specifically, “speech sentence type” (speech type) is determined based on each morpheme corresponding to the sentence pattern signal input from the phrase analysis unit 420 and a phrase composed of each morpheme.
[0033]
In this embodiment, as shown in FIG. 6, the “spoken sentence type” is a statement sentence (D; Declaration), an impression sentence (I; Impression), a conditional sentence (C; Condition), and a result sentence ( E; Effect, time sentence (T; Time), location sentence (L; Location), repulsive sentence (N; Negation), and the like.
[0034]
The statement sentence means a sentence composed of a user's opinion or idea, and in this embodiment, as shown in FIG. 6, for example, a sentence such as “I like Sato” can be cited. An impression sentence means the sentence which consists of an impression which a user holds. A place sentence means a sentence made up of place elements.
[0035]
A result sentence means a sentence composed of sentences including a result element for a topic. A time sentence means a sentence composed of sentences including temporal elements related to a topic.
[0036]
The conditional sentence means a sentence composed of sentences including elements such as a premise of a topic, a condition and a reason why the topic is established, when one utterance is regarded as a topic. The repulsive sentence means a sentence composed of a sentence including an element that repels the utterance partner. An example sentence for each “spoken sentence type” is as shown in FIG.
[0037]
That is, the utterance type determination unit 440 collates each phrase with each dictionary stored in the utterance type database 460 based on each phrase corresponding to the input sentence pattern signal, and from each phrase, Extract sentence elements related to the dictionary. The utterance type determination unit 440 that extracts sentence elements related to each dictionary from each phrase determines “spoken sentence type” based on the extracted sentence elements. The sentence element means a type for identifying the type of character string, and the sentence element in the present embodiment includes the above-described definition phrase (which means “-”).
[0038]
Here, as shown in FIG. 7, the utterance type database 460 includes a definition expression example dictionary having a dictionary related to a definition phrase (for example,), an affirmative phrase (for example, approval, sympathy, ping pong). positive cases dictionary with a dictionary related to, a result clause (for example, so, so) the results representation case dictionary with a dictionary related to, greeting clause (for example, Hello) greeting case dictionary with a dictionary related to, It is composed of a negative example dictionary having a dictionary related to a negative phrase (for example, it is not idiot, the opposite), and each dictionary is associated with “type of spoken sentence”.
[0039]
As a result, the utterance type determination unit 440 compares the phrase with each dictionary stored in the utterance type database 460, extracts the sentence element related to each dictionary from the phrase, and associates it with the extracted sentence element. The “spoken sentence type” can be determined by referring to the determined type.
[0040]
The utterance type determination unit 440 outputs an answer search command signal for causing the corresponding user to search for a specific answer sentence to the answer sentence search unit 370 based on an instruction from the topic search unit 360 described later.
[0041]
The conversation database 500 stores in advance a plurality of second morpheme information indicating each morpheme composed of one character, a plurality of character strings, or a combination thereof, and a plurality of reply contents to the user with respect to the utterance contents. Storage means (discourse storage means). The conversation database 500 is also an answer storage unit (discourse storage unit) that stores in advance a plurality of answer types indicating the types of answer contents associated with a plurality of answer contents in association with the second morpheme information.
[0042]
Furthermore, the conversation database 500 stores in advance a plurality of discourse ranges (keywords) indicating morphemes that constitute a range relevant to the input content that will be input by the user or the response content to the user. But there is. A plurality of second morpheme information indicating a morpheme made up of one character, a plurality of character strings, or a combination thereof is associated with the discourse range (keyword), and each second morpheme information includes a response content to the user. Associated with each.
[0043]
Furthermore, the conversation database 500 is also an answer storage means (discourse storage means) for classifying and storing each element constituting the second morpheme information into attributes such as each subject consisting of a main case and a target case consisting of a target case. .
[0044]
As shown in FIG. 8, in the present embodiment, the conversation database 500 is roughly divided in the present embodiment, which means a range that is related to the content of the speech that will be spoken by the user or the content of the response to the user. It consists of a range (discourse) and a topic (topic) that means a range that is most closely related to the content the user is speaking. As shown in the figure, “discourse range” is positioned as a superordinate concept of “topic” in the present embodiment.
[0045]
Each discourse range can be configured to have a hierarchical structure as shown in FIG. As shown in the figure, for example, a higher level discourse range (entertainment) for a certain discourse range (movie) is positioned in the upper hierarchical structure, and a lower level discourse range (movie) for the discourse range (movie). The attribute (movie) can be located in the lower hierarchical structure. That is, in the present embodiment, each discourse range can be arranged at a hierarchical position where the relationship between the higher concept, the lower concept, the synonym, and the synonym becomes clear with other discourse ranges.
[0046]
As described above, the discourse range is composed of topics, and in this embodiment, for example, if the discourse range is an A movie name, it includes a plurality of topics related to the A movie name.
[0047]
This topic means a morpheme composed of a single character, a plurality of character strings, or a combination thereof, that is, each morpheme constituting speech content that will be uttered by the user. Each morpheme is associated with a subject (subject), an object (target case), and an action “case” (attribute). In this embodiment, each morpheme associated with these three elements is expressed as a topic title (this topic title corresponds to a subordinate concept of “topic”) (second morpheme information). .
[0048]
The topic title is not limited to each morpheme associated with the above three elements, but other “cases”, that is, time (tense, aspect) meaning time, location meaning place, You may have each morpheme matched with the condition which means a condition, the impression which means an impression, the effect which means a result, etc.
[0049]
In this embodiment, the topic title (second morpheme information) is stored in advance in the conversation database 500, and the first morpheme information (derived from the utterance content uttered by the user) is It is a distinction.
[0050]
For example, if the talk range is “A movie name”, as shown in FIG. 10, the subject title is subject (A movie name), object (director), action (great) {this is “A movie name” The director of the name is composed of "meaning great".
[0051]
If there is no morpheme associated with “case composition” (subject, object, action, etc.) among the topic titles, “*” is indicated for the portion in the present embodiment.
[0052]
For example, {A What is a movie name? } Is converted into a topic title (subject; object; action). }, “A movie name” can be specified as a subject, but “object” and “action” are not elements of the sentence, so the topic title is “subject” (A movie name). “No object” (*); “No action” (*) (see FIG. 10).
[0053]
The answer sentence means an answer sentence (answer contents) to be answered to the user, and is associated with each topic title (second morpheme information) in this embodiment (see FIG. 8). In this embodiment, as shown in FIG. 11, the answer sentence is a statement sentence (D; Declaration), an impression sentence in order to make an answer corresponding to the type of utterance sentence uttered by the user. Types such as (I; Impression), conditional statement (C; Condition), result statement (E; Effect), time statement (T; Time), location statement (L; Location), negative statement (N; Negation) Type).
[0054]
That is, as shown in FIG. 12, each answer sentence is associated with, for example, a discourse range (Sato) {subordinate concept; home run, superordinate concept; grass baseball, synonym; panda Sato, Sato player, panda} and each topic title. It has been.
[0055]
As shown in the figure, for example, the topic title 1-1 is {(Sato; *; I like): this consists of the order of (subject; object; action) as described above. If the order is the same below, the answer sentence 1-1 corresponding to the topic title 1-1 is (DA; statement affirmation “I like Sato”), (IA; comment affirmation) “I like Sato very much”), (CA; conditional affirmation “Sato ’s home run is very impressive”), (EA; a result affirming “I always watch Sato's games on TV”), (TA: Time affirmative sentence "I actually like it from the five-bats continual refrain in Koshien"), (LA; Place affirmative sentence "I like the serious face when standing on the blow"), (NA A repulsive affirmative sentence "I don't want to talk to people who don't like Sato, goodbye").
[0056]
In the present embodiment, as shown in FIG. 2, the conversation control unit 300 includes a management unit 310, a reflexive determination unit 320, a turnback determination unit 330, a discourse range determination unit 340, and an abbreviated sentence complement unit 350. , A topic search unit 360 and an answer sentence search unit 370.
[0057]
The management unit 310 controls the entire conversation control unit 300. Specifically, the management unit 310 to which a character string is input from the input unit 100 or the voice recognition unit 200 outputs the input character string to the morpheme extraction unit 410 as a character string signal. In addition, the management unit 310 outputs the answer sentence searched by the answer sentence search unit 370 to the output unit 600.
[0058]
The reflexive determination unit 320 is a fixed form acquisition unit that collates the first morpheme information extracted by the morpheme extraction unit 410 with each fixed content, and searches the fixed content including the first morpheme information from each fixed content. .
[0059]
Here, the standard content means reflection element information for replying a standard content to the utterance content from the user, and this reflection element information is stored in the reflection element database 801 (standard storage means) in advance. A plurality are stored. As the reflective element information, in the present embodiment, as shown in FIG. 13, for example, "Good morning", "Hello", "Good evening", "greeting elements" such as "Hey", "I see", "Really?""Typicalelements" such as
[0060]
Specifically, the reflexive determination unit 320 to which the topic search command signal is input from the sentence structure analysis unit 430 receives the first morpheme information included in the input topic search command signal and the reflection element database 801. The reflection element information is collated, the reflection element information including the first morpheme information is searched from the reflection element information, and the searched reflection element information is output to the management unit 310.
[0061]
That is, assuming that the reflection element information is D1 and the first morpheme information is W, the reflective determination unit 320 determines that the relationship of W∩D1 ≠ φ (φ; empty set) is established. Process to give a typical answer.
[0062]
For example, when the user utters the utterance content “Good morning”, the reflexive determination unit 320 collates the utterance content “Good morning” with each reflection element information, and the utterance content from each reflection element information. The reflection element information “good morning” including (matching) “good morning” is searched, and the searched reflection element information “good morning” is output to the management unit 310.
[0063]
When the reflection determination unit 320 cannot search the reflection element information including the utterance content from the reflection element information, the reflex determination unit 320 returns the topic search command signal input from the sentence structure analysis unit 430. Output to.
[0064]
The return determination unit 330 collates the current first morpheme information extracted by the morpheme extraction unit 410 with the past response content stored in the return element database 802, and the current first morpheme information is a past response. If included in the content, it is a fixed form acquisition means for acquiring the content of the agreement.
[0065]
Here, “turnback” means to say back the content of the user's utterance as it is (or content close to it) in this embodiment. In this embodiment, the return element is composed of the first morpheme information that constitutes the response content output from the conversation control device 1 immediately before. For example, as shown in FIG. (Horse; *; beautiful), “I like Sato” (Sato; *; I like).
[0066]
Further, the return element database 802 is also an agreement storage means for preliminarily storing agreement contents for agreeing to input information input by the user. The content of the agreement includes, for example, the input information previously input by the user (if the previous input information by the user is “A film name director is Mr. S”, the content of the agreement is “ The director of the A movie name is Mr. S)), or “Yes”, “It is true”.
[0067]
Specifically, the return determination unit 330 to which the topic search command signal is input from the reflective determination unit 320 configures the first morpheme information and the return element included in the input topic search command signal for each return element. Each morpheme is collated, and it is determined whether or not the first morpheme information is included in the return element (see FIG. 14).
[0068]
If it is determined that the first morpheme information is included in each return element, the return determination unit 330 acquires the content of the agreement and outputs an answer sentence including the acquired content of the agreement to the management unit 310 (return) Process). That is, assuming that the return element (such as the previous answer sentence) is S and the first morpheme information is W, the return determination unit 330 indicates the above when the relationship of W⊂S and W ≠ φ is established. Performs a reversal process.
[0069]
For example, the conversation control device 1 responds with “The director of the A movie name is Mr. S” (Director of the A movie name; Mr. S; *) (the order is the subject, the object, the order of the action, and so on. ) Is output, and then the user responds with a response if the utterance is “is the director of A movie name Mr. S” (director of A movie name; Mr. S; *)? Since the determination unit 330 matches the first morpheme information of the user (Director of A movie name; Mr. S; *) and each morpheme of the answer sentence (Director of A movie name; Mr. S; *), The user concludes that he / she is replying to the contents of the reply, obtains the stored agreement contents “Yes”, and outputs the obtained agreement contents.
[0070]
Further, the return determination unit 330 collates the current first morpheme information extracted by the morpheme extraction unit 410 with the past first morpheme information stored in the return element database 802 to obtain the current first morpheme information. Is included in the past first morpheme information, it is also a fixed form acquisition means for acquiring the repulsion content.
[0071]
Specifically, when the user utters the utterance content “Horse is beautiful” and the conversation control device 1 outputs the content “Horse is good” as the response content When the person repeats the utterance content that “the horse is beautiful”, the turn-back determination unit 330 determines that each morpheme (first morpheme information) {horse; *; beautiful} constituting the current utterance content “horse is beautiful” Each morpheme (first morpheme information) {horse; *; beautiful} that constitutes the content of the previous utterance “Horse is beautiful” matches the content of the response from the conversation control device 1 to the user. You can conclude that you have not heard at all about "I feel good."
[0072]
In this case, since the user has not heard the response content from the conversation control device 1, the return determination unit 330 acquires the stored repulsion content (for example, do not repeat the same content), and the acquired repulsion The contents can be output.
[0073]
On the other hand, if the reversion determining unit 330 determines that the first morpheme information is the same as the content of the previous answer sentence or the first morpheme information is not the same as the previous first morpheme information, the reflex determination unit 320 The input topic search command signal is output to the conversation range determination unit 340.
[0074]
In addition, although the said return determination part 330 has shown the process in case a user makes a return with respect to "the reply content of the conversation control apparatus 1," the following processes can also be performed. For example, when the output unit 600 outputs an answer sentence “Horse is beautiful”, the user answers “Why is the horse beautiful?”, “Why is it beautiful?”, Or “Why?” This is a process of the turn-back determination unit 330 performed when the utterance is made.
[0075]
In this case, the return determination unit 330 outputs the response sentence S “the horse is beautiful” and the utterance content W from the user (“Why is the horse beautiful? (Question sentence)” or “Why is it beautiful? (Question sentence) ”), (W−c) ⊂S, S ≠ φ, c ≠ φ (where c means the utterance type of W, and this utterance type is determined by the utterance type determination unit 440 described later. As will be described later, for example, a question sentence can be cited as an utterance type, so a “conditional” reversal processing (the user asks the question contents for the answer contents). (Processing when a flip is performed).
[0076]
For example, when the conversation control device 1 outputs an answer sentence “The horse is beautiful”, the above-mentioned user utters the content of the utterance “Why is the horse beautiful?”. At that time, in order to resolve the user's question, the return determination unit 330 acquires an answer sentence such as “Even the horse is not beautiful” from the return element database 802, and the acquired answer sentence is sent to the management unit 310. Process to output.
[0077]
The discourse range determination unit 340 collates the first morpheme extracted by the phrase analysis unit 420 with each discourse range, and searches the discourse range for a discourse range that matches the morpheme included in the first morpheme information. It is a discourse search means.
[0078]
Specifically, the conversation range determination unit 340 to which the topic search command signal is input from the turn-back determination unit 330 determines the user's conversation range based on the input talk search command signal. That is, based on the input search command signal, the conversation range determination unit 340 searches the conversation database 500 for a range (discourse range) relevant to the content spoken by the user.
[0079]
For example, the discourse range determination unit 340 includes the first morpheme information included in the input topic search command signal (an interesting movie; *; is there) {is there an interesting movie? }, The first morpheme information is compared with the discourse range group, and if the discourse range group includes a morpheme (for example, “movie”) constituting the first morpheme information, The “movie” included in the information is determined as the discourse range. In this case, since the discourse range “movie” is included in the first morpheme information, the discourse range determination unit 340 includes the input first morpheme information in the topic search command signal and outputs it to the topic search unit 360.
[0080]
On the other hand, when the first morpheme information does not include a discourse range group, the conversation range determination unit 340 includes the input first morpheme information in the topic search command signal and outputs it to the abbreviated sentence complement unit 350.
[0081]
Thereby, the topic search unit 360 described later collates each “topic title” belonging to the “discourse range” determined by the conversation range determination unit 340 with the first morpheme information specified by the sentence structure analysis unit 430. Therefore, it is unnecessary to collate “all” “topic titles” (second morpheme information) with the first morpheme information, and the answer sentence search unit 370 to be described later will search for the final answer sentence. Can be shortened.
[0082]
As described above, the discourse range determination unit 340 collates the first morpheme information and the discourse range group, and if the discourse range group includes the morpheme of the first morpheme information, determines the morpheme as the discourse range. However, the present invention is not limited to this, and the morpheme of the return element retrieved immediately by the return determination unit 330 or the morpheme constituting the utterance content uttered by the user may be determined as the discourse range. . The abbreviated sentence complementing unit 350, which will be described later, can add the discourse range to the first morpheme information from which the morpheme is omitted, using the discourse range determined by the discourse range determination unit 340.
[0083]
The abbreviated sentence complementing unit 350 searches the attributes (subjects, objects, actions, etc.) constituting the first morpheme information based on the first morpheme information extracted by the phrase analysis unit 420 for attributes that do not include a morpheme. Attribute search means. The abbreviated sentence complementing unit 350 is also a morpheme adding unit that adds a morpheme constituting the discourse range searched by the discourse range determining unit 340 to the attribute based on the searched attribute.
[0084]
Specifically, the abbreviated sentence complementing unit 350 to which the topic search command signal is input from the discourse range determination unit 340 is based on the first morpheme information included in the input discourse search command signal, and the utterance including the first morpheme information. It is determined whether or not the content is an abbreviated sentence. If the utterance content including the first morpheme information is an abbreviated sentence, the morpheme in the discourse range to which the first morpheme information belongs is added to the first morpheme information.
[0085]
For example, the abbreviation sentence complementing unit 350 has a morpheme constituting the first morpheme information included in the input topic search command signal (director; *; *) (director?) (This sentence is “what” director If it is unknown, it means an abbreviated sentence.), The discourse range determined by the discourse range determination unit 340 (A movie name; this A movie name indicates the title of the movie) If it is the first morpheme information belonging to A), the determined discourse range (A movie name) is added to the first morpheme information to the morpheme constituting the first morpheme information (director of “A movie name”; *; *) Yes.
[0086]
That is, assuming that the first morpheme information is W and the determined discourse range is D, the abbreviated sentence complementing unit 350 adds the discourse range D to W and includes the added first morpheme information in the topic search command signal. The information is output to the topic search unit 360.
[0087]
Thereby, even if the first morpheme information is an abbreviated sentence and it is not clear as Japanese, the abbreviated sentence complementing unit 350, when the first morpheme information belongs to a certain discourse range, for example, The discourse range D (A movie name) is added to the first morpheme information W (director; *; *), and the first morpheme information is added to W ′ (A movie name director; *; *). ? }, Even if the user's utterance content is an abbreviated sentence, the abbreviated sentence can be supplemented based on the previously determined discourse range, and the abbreviated sentence should be clarified Can do.
[0088]
For this reason, the first morpheme information is set so that the abbreviated sentence complementing unit 350 has the proper utterance contents constituting the first morpheme information even if the utterance contents constituting the first morpheme information are abbreviated sentences. Since the specific morpheme can be complemented, the topic search unit 360 acquires the optimal “topic title” (second morpheme information) related to the first morpheme information based on the first morpheme information after the complement. The answer sentence search unit 370 can output the answer content more suitable for the user's utterance content based on the “topic title” acquired by the topic search unit 360.
[0089]
The topic search unit 360 collates the first morpheme information extracted by the phrase analysis unit 420 or the first morpheme information supplemented by the abbreviated sentence complement unit 350 with each second morpheme information, It is a search means for searching second morpheme information including morphemes constituting the first morpheme information.
[0090]
Specifically, the topic search unit 360 to which the topic search command signal is input from the talk range determination unit 340 or the abbreviated sentence complement unit 350 is based on the first morpheme information included in the input topic search command signal. The “topic title” including the morpheme of the first morpheme information is searched from each “topic title” (second morpheme information) belonging to the discourse range determined by the determination unit 340, and the search result is used as a search result signal. The information is output to the answer sentence search unit 370 and the utterance type determination unit 440.
[0091]
For example, when the “case configuration” constituting the first morpheme information is (Sato; *; I like) {I like Sato}, the topic search unit 360, as shown in FIG. Each morpheme (Sato; *; I like) belonging to the “composition” is compared with each topic title 1-1 to 1-4 belonging to the discourse range (Sato), and from among the topic titles 1-1 to 1-4 A topic title 1-1 (Sato; *; likes) that matches (or approximates) each morpheme (Sato; *; likes) belonging to the “case composition” is searched, and this search result is used as a search result signal as a response sentence. The data is output to the search unit 370 and the utterance type determination unit 440.
[0092]
The utterance type determination unit 440 to which the search result signal is input from the topic search unit 360, based on the input search result signal, an answer search command for searching for a specific answer sentence that answers to the corresponding user. A signal (this answer search command signal also includes the determined “sentence type”) is output to the answer sentence search unit 370.
[0093]
The answer sentence search unit 370 is an answer acquisition unit that acquires an answer sentence associated with the second morpheme information based on the second morpheme information (topic title) searched by the topic search unit 360. In addition, the answer sentence search unit 370 collates the utterance type of the identified user with each answer type associated with the second morpheme information based on the second morpheme information searched by the topic search unit 360, It is also a second search means for searching for an answer type that matches the user's utterance type from among the answer types.
[0094]
Specifically, the answer sentence search unit 370, to which the search result signal from the topic search unit 360 and the answer search command signal from the utterance type determination unit 440 are input, the topic title (search result) corresponding to the input search result signal. Based on the second morpheme information) and the “speech sentence type” (utterance type) corresponding to the answer search command signal, the answer sentence group (each answer content) associated with the “topic title”. Among them, an answer sentence having an answer type (this answer type means “type of answer sentence” shown in FIG. 11) that matches the “sentence sentence type” (DA, IA, CA, etc.) is searched.
[0095]
For example, when the topic title corresponding to the search result is the topic title 1-1 (Sato; *; I like) shown in FIG. 12, the answer sentence search unit 370 is associated with the topic title 1-1. Of the reply sentences 1-1 (DA, IA, CA, etc.), the reply composed of the reply type (DA) that matches the “spoken sentence type” (for example, DA; utterance type) determined by the utterance type determination unit 440. The sentence 1-1 (DA; (I also like Sato) is searched), and the searched answer sentence is output to the management unit 310 as an answer sentence signal.
[0096]
The management unit 310 to which the answer sentence signal is input from the answer sentence search unit 370 outputs the input answer sentence signal to the output unit 600. In addition, the management unit 310 to which the reflection element information is input from the reflective determination unit 320 or the contents of the turn-back process from the turn-back determination unit 330, the answer sentence corresponding to the input reflection element information, the content of the turn-back process that is input To the output unit 600.
[0097]
The output unit 600 is an output unit that outputs the answer text acquired by the answer text search unit 370. In this embodiment, for example, a speaker, a display, and the like can be given. Specifically, the output unit 600 to which an answer sentence is input from the management unit 310 outputs the input answer sentence {for example, I also like Sato}.
[0098]
(Conversation control method using conversation control device)
The conversation control method by the conversation control apparatus 1 having the above configuration can be implemented by the following procedure. FIG. 15 is a flowchart showing the procedure of the conversation control method according to the present embodiment.
[0099]
First, the input unit 100 performs a step of acquiring the utterance content from the user (S101). Specifically, the input unit 100 acquires the voice that constitutes the utterance content of the user, and outputs the acquired voice to the voice recognition unit 200 as a voice signal. Further, the input unit 100 identifies a character string corresponding to the input information (other than the voice) based on the input information (other than the voice) input from the user, and the conversation control unit uses the identified character string as a character string signal. Output to 300.
[0100]
Next, the voice recognition unit 200 performs a step of specifying a character string corresponding to the utterance content based on the utterance content acquired by the input unit 100 (S102). Specifically, the speech recognition unit 200 to which a speech signal is input from the input unit 100 analyzes the input speech signal, and a character string corresponding to the analyzed speech signal is stored in the speech recognition dictionary storage unit 700. The specified character string is output to the conversation control unit 300 as a character string signal.
[0101]
And the morpheme extraction part 410 performs the step which extracts each morpheme which comprises the minimum unit of a character string as 1st morpheme information based on the character string specified by the speech recognition part 200 (S103).
[0102]
Specifically, the morpheme extraction unit 410 to which the character string signal is input from the management unit 310 includes a character string corresponding to the input character string signal and nouns, adjectives, verbs, and the like stored in advance in the morpheme database 450. The morpheme group is collated, each morpheme (m1, m2,...) Matching the morpheme group is extracted from the character string, and each extracted morpheme is output to the phrase analysis unit 420 as an extraction signal.
[0103]
Then, the phrase analysis unit 420 performs a step of grouping each morpheme into a phrase format based on each morpheme extracted by the morpheme extraction unit 410 (S104). Specifically, the phrase analysis unit 420 to which the extraction signal is input from the morpheme extraction unit 410 uses the morphemes corresponding to the input extraction signal to combine them into a phrase format.
[0104]
That is, as shown in FIG. 4, the phrase analysis unit 420 extracts and extracts the dependency elements (for example, gahahahahaha ...) of each morpheme based on each morpheme corresponding to the input extraction signal. Each morpheme is grouped into each clause based on the dependency element.
[0105]
The phrase analysis unit 420 that collects each morpheme into each phrase includes a sentence structure analysis unit 430 and an utterance type determination unit 440 using sentence pattern information including each phrase that combines each morpheme and each morpheme constituting each phrase as a sentence pattern signal. Output to.
[0106]
Thereafter, the sentence structure analysis unit 430 performs a step of classifying each morpheme of the first morpheme information segmented by the phrase analysis unit 420 into attributes such as subject case and target case (S105). Specifically, the sentence structure analysis unit 430, to which the sentence pattern signal is input from the phrase analysis unit 420, determines each morpheme included in the phrase based on each morpheme corresponding to the input sentence pattern signal and the phrase composed of each morpheme. Determine the “case composition”.
[0107]
That is, as shown in FIG. 5, for example, when the dependency element of each morpheme is “” or “is”, the sentence structure analysis unit 430 applies the subject (subject) to the morpheme before the dependency element. Or a leading character). For example, when the dependency element of each morpheme is “NO” or “NO”, the sentence structure analysis unit 430 determines that the morpheme before the dependency element is an object (target).
[0108]
Further, for example, when the dependency element of each morpheme is “Yes”, the sentence structure analysis unit 430 includes an action (predicate; this predicate is composed of a verb, an adjective, and the like). It is determined that
[0109]
The sentence structure analysis unit 430 that has determined the “case structure” of each morpheme that constitutes each clause determines the range of topics (topics) to be described later based on the first morpheme information associated with the determined “case structure”. A topic search command signal for specifying is output to the topic search unit 360.
[0110]
Next, the utterance type determination unit 440 performs a step of specifying an utterance type indicating the type of utterance content based on the phrase specified by the phrase analysis unit 420 (S106). Specifically, “speech sentence type” (speech type) is determined based on each morpheme corresponding to the sentence pattern signal input from the phrase analysis unit 420 and a phrase composed of each morpheme.
[0111]
That is, the utterance type determination unit 440 collates each phrase with each dictionary stored in the utterance type database 460 based on each phrase corresponding to the input sentence pattern signal, and from each phrase, Extract sentence elements related to the dictionary. The utterance type determination unit 440 that extracts sentence elements related to each dictionary from each phrase determines “spoken sentence type” based on the extracted sentence elements.
[0112]
The utterance type determination unit 440 outputs an answer search command signal for causing the corresponding user to search for a specific answer sentence to the answer sentence search unit 370 based on an instruction from the topic search unit 360 described later.
[0113]
Next, the reflexive determination unit 320 compares the first morpheme information extracted by the morpheme extraction unit 410 with each fixed content, and performs a step of searching for fixed content including the first morpheme information from each fixed content. (S107: reflective processing).
[0114]
Specifically, the reflexive determination unit 320 to which the topic search command signal is input from the sentence structure analysis unit 430 receives the first morpheme information included in the input topic search command signal and the reflection element database 801. The reflection element information (standard content) is collated, the reflection element information including the first morpheme information is searched from each reflection element information, and the searched reflection element information is output to the management unit 310.
[0115]
When the reflection element information cannot be searched for the reflection element information including the first morpheme information from the reflection element information, the reflection determination unit 320 determines whether to return the topic search command signal input from the sentence structure analysis unit 430. To the unit 330.
[0116]
Next, the return determination unit 330 collates the first morpheme information extracted by the morpheme extraction unit 410 with each return element, and performs a step of searching for the return element including the first morpheme information from each return element ( S108;
[0117]
When it is determined that the first morpheme information is included in each return element, the return determination unit 330 acquires the return element including the first morpheme information, and manages the response sentence including the acquired return element. The data is output to the unit 310 (turnback processing). That is, if the return element (answer sentence output last time, utterance content spoken by the previous user, etc.) is S and the first morpheme information is W, the return determination unit 330 has a relationship of W⊂S and W ≠ φ. If it is established, the turn-back process shown above is performed.
[0118]
On the other hand, when determining that the first morpheme information is not included in each return element, the return determination unit 330 sends the topic search command signal input from the reflective determination unit 320 to the conversation range determination unit 340. Output.
[0119]
Then, the discourse range determination unit 340 collates the first morpheme extracted by the phrase analysis unit 420 with each discourse range, and searches (determines) the discourse range including the first morpheme information from each discourse range. A step is performed (S109).
[0120]
Specifically, the conversation range determination unit 340, to which the topic search command signal is input from the reversal determination unit 330, is based on the input search command signal, and the content the user is speaking from the conversation database 500. Search for a relevant range (discourse range).
[0121]
For example, the discourse range determination unit 340 includes the first morpheme information included in the input topic search command signal (an interesting movie; *; is there) {is there an interesting movie? }, The first morpheme information is compared with the discourse range group, and if the discourse range group includes a morpheme (for example, “movie”) constituting the first morpheme information, The “movie” included in the information is determined as the discourse range. In this case, since the discourse range “movie” is included in the first morpheme information, the discourse range determination unit 340 includes the input first morpheme information in the topic search command signal and outputs it to the topic search unit 360.
[0122]
On the other hand, when the first morpheme information does not include a discourse range group, the conversation range determination unit 340 includes the input first morpheme information in the topic search command signal and outputs it to the abbreviated sentence complement unit 350.
[0123]
Next, the abbreviation sentence complementing unit 350 includes attributes that do not include a morpheme among the attributes (subject, object, action, etc.) constituting the first morpheme information based on the first morpheme information extracted by the phrase analysis unit 420. Perform the step of searching. Thereafter, the abbreviated sentence complementing unit 350 performs a step of adding the morpheme constituting the discourse range searched by the discourse range determining unit 340 to the attribute based on the attribute not including the searched morpheme (S110; abbreviated sentence). Complement).
[0124]
Specifically, the abbreviated sentence complementing unit 350 to which the topic search command signal is input from the discourse range determination unit 340 is based on the first morpheme information included in the input discourse search command signal, and the utterance including the first morpheme information. It is determined whether or not the content is an abbreviated sentence. If the utterance content including the first morpheme information is an abbreviated sentence, the morpheme in the discourse range to which the first morpheme information belongs is added to the first morpheme information.
[0125]
For example, the abbreviation sentence complementing unit 350 has a morpheme constituting the first morpheme information included in the input topic search command signal (director; *; *) (director?) (This sentence is “what” director If it is unknown, it means an abbreviated sentence.), The conversation range previously determined by the conversation range determination unit 340 (A movie name; this A movie name is the title of the movie) The first morpheme information belonging to the first morpheme information is added to the first morpheme information ("A movie name"). Director; *; *).
[0126]
That is, assuming that the first morpheme information is W and the determined discourse range is D, the abbreviated sentence complementing unit 350 adds the discourse range D to the first morpheme information W, and uses the first morpheme information after the addition as a topic search command. It is included in the signal and output to the topic search unit 360.
[0127]
Next, the topic search unit 360 collates the first morpheme information extracted by the phrase analysis unit 420 or the first morpheme information supplemented by the abbreviated sentence complement unit 350 with each second morpheme information, and each second morpheme A step of searching for second morpheme information including morpheme constituting the first morpheme information from the information is performed (S111).
[0128]
Specifically, the topic search unit 360 to which the topic search command signal is input from the talk range determination unit 340 or the abbreviated sentence complement unit 350 is based on the first morpheme information included in the input topic search command signal. The “topic title” including the morpheme of the first morpheme information is searched from each “topic title” (second morpheme information) belonging to the discourse range determined by the determination unit 340, and the search result is used as a search result signal. The information is output to the answer sentence search unit 370 and the utterance type determination unit 440.
[0129]
For example, when the “case configuration” constituting the first morpheme information is (Sato; *; I like) {I like Sato}, the topic search unit 360, as shown in FIG. Each morpheme (Sato; *; I like) belonging to the “composition” is compared with each topic title 1-1 to 1-4 belonging to the discourse range (Sato), and from among the topic titles 1-1 to 1-4 A topic title 1-1 (Sato; *; likes) that matches (or approximates) each morpheme (Sato; *; likes) belonging to the “case composition” is searched, and this search result is used as a search result signal as a response sentence. The data is output to the search unit 370 and the utterance type determination unit 440.
[0130]
The utterance type determination unit 440 to which the search result signal is input from the topic search unit 360, based on the input search result signal, an answer search command for searching for a specific answer sentence that answers to the corresponding user. A signal (this answer search command signal also includes the determined “sentence type”) is output to the answer sentence search unit 370.
[0131]
Then, the answer sentence search unit 370 collates the utterance type of the identified user with each answer type associated with the second morpheme information based on the second morpheme information searched by the topic search unit 360, A search is made for a response type that matches the user's utterance type from each response type, and an answer sentence associated with the response type is obtained based on the searched response type (S112).
[0132]
Specifically, the answer sentence search unit 370, to which the search result signal from the topic search unit 360 and the answer search command signal from the utterance type determination unit 440 are input, the topic title (search result) corresponding to the input search result signal. Based on the second morpheme information) and the “speech sentence type” (utterance type) corresponding to the answer search command signal, the answer sentence group (each answer content) associated with the “topic title”. Among them, an answer sentence having an answer type (this answer type means “type of answer sentence” shown in FIG. 11) that matches the “sentence sentence type” (DA, IA, CA, etc.) is searched.
[0133]
For example, when the topic title corresponding to the search result is the topic title 1-1 (Sato; *; I like) shown in FIG. 12, the answer sentence search unit 370 is associated with the topic title 1-1. Of the reply sentences 1-1 (DA, IA, CA, etc.), the reply composed of the reply type (DA) that matches the “spoken sentence type” (for example, DA; utterance type) determined by the utterance type determination unit 440. The sentence 1-1 (DA; (I also like Sato) is searched), and the searched answer sentence is output to the management unit 310 as an answer sentence signal.
[0134]
Next, the management unit 310 to which the answer sentence signal is input from the answer sentence search unit 370 outputs the input answer sentence signal to the output unit 600. In addition, the management unit 310 to which the reflection element information is input from the reflective determination unit 320 or the contents of the turn-back process from the turn-back determination unit 330, the answer sentence corresponding to the input reflection element information, the content of the turn-back process that is input Is output to the output unit 600 (S113). The output unit 600 to which an answer sentence is input from the management unit 310 outputs the input answer sentence {for example, I also like Sato}.
[0135]
(Operation and effect of conversation control device and conversation control method)
According to the invention according to the present application having the above-described configuration, the reflexive determination unit 320 collates the first morpheme information constituting the utterance content uttered by the user with each fixed content stored in advance, and each fixed content from among, it is possible to find the standard content including a first morpheme information, reflexive determination unit 320, for example when the first morpheme information is a fixed content such as "Hello" includes the standard content it is possible to answer the same boilerplate content "Hello" or the like.
[0136]
In addition, when the user's utterance content is a fixed content, the reflexive determination unit 320 replies with the fixed content (greeting etc.), so that the user first contacts the conversation control device 1. You can enjoy a sense of communication.
[0137]
Further, the reversal determination unit 330 compares the current first morpheme information with the past response content, and if the current first morpheme information is not included in the past response content, the agreement stored in advance is stored. Since the contents can be acquired, if the input information currently input from the user matches the past response contents, the return determination unit 330 returns the user to the previous response contents (use It is possible to conclude that the user has input the input information that the person is listening to the response content.
[0138]
In this case, the return determination unit 330 acquires the contents of the agreement that has been stored and the acquired agreement (for example, “That ’s right”) because the user has made a response to the previous response. Can be output. As a result, if the user does not understand the meaning of the answer content output from the conversation control device 1, he can listen again and listen again to the answer content, so he is also talking to other users. You can taste a feeling like this.
[0139]
Further, the reversal determination unit 330 collates the current first morpheme information with the past first morpheme information, and if the current first morpheme information is included in the past first morpheme information, the repulsion content is acquired. Therefore, when the input information input last time is included in the input information input this time, the user may repeatedly input the same content as the previous input information. Therefore, it can be determined that the user has not properly answered the response content from the conversation control device.
[0140]
In this case, since the user does not appropriately reply to the previous response content, the reversal determination unit 330 repels the user, so the stored repulsion content is acquired, and the acquired repulsion content Is output. As a result, if the user does not input appropriate input information with respect to the response content from the conversation control device 1, the repulsion content is output from the conversation control device 1. You can taste a sense of being.
[0141]
Further, in order to search for the second morpheme information approximate to the first morpheme information, the topic search unit 360 may collate each second morpheme information belonging to the “discourse range” with the first morpheme information. Since it is not necessary to collate the second morpheme information with the first morpheme information, the time until the second morpheme information approximate to the first morpheme information can be shortened.
[0142]
As a result, the topic search unit 360 can search (pinpoint search) the second morpheme information that approximates the first morpheme information in a short time, so that the answer sentence search unit 370 is the topic search unit 360. An answer sentence associated with the second morpheme information can be acquired in a short time based on the searched second morpheme information, and the conversation control device 1 quickly answers the utterance content from the user. be able to.
[0143]
Moreover, the topic search part 360 searches the 2nd morpheme information which contains the morpheme (element which comprises a user's utterance content) which comprises 1st morpheme information from each 2nd morpheme information, and an answer sentence search part Since 370 can acquire the answer content associated with the second morpheme information based on the second morpheme information searched by the topic search unit 360, the answer sentence search unit 370 can obtain the utterance content of the user. Based on each constituent morpheme (first morpheme information), it is possible to take into account the semantic spaces (subjects, objects, etc.) constructed by each morpheme and obtain the response contents created in advance based on such semantic spaces Thus, it is possible to acquire the answer content more suitable for the utterance content, rather than simply using the entire utterance content as a keyword and obtaining the answer content associated with the keyword.
[0144]
Further, since the topic search unit 360 searches for the second morpheme information including the first morpheme information, it is not necessary to search for the second morpheme information that completely matches the utterance content of the user, and the conversation control device 1 is developed. The developer who does not need to memorize a huge amount of answer contents corresponding to the utterance contents that will be uttered by the user in advance, and can reduce the capacity of the storage unit.
[0145]
Furthermore, the answer sentence search unit 370 selects the answer type that matches the user's utterance type from the answer types (description, affirmation, location, repulsion, etc.) associated with each second morpheme information belonging to the “discourse range”. Since the response content associated with the response type can be acquired based on the searched response type, the conversation control device 1 can determine the utterance type that constitutes the user's conversation content, for example, the user Answers that match the user's utterance type out of multiple answers based on what is simply stated, what the user has to say, what the user describes the location element, etc. As a result, it is possible to obtain an optimal answer to the corresponding user.
[0146]
Furthermore, the answer sentence search unit 370 matches the user's utterance type from the answer types associated with the second morpheme information belonging only to the “discourse range” searched by the discourse range determination unit 340. Since it is only necessary to search for the type (pinpoint search is possible), it is not necessary to search for the response type associated with the “all” second morpheme information and the user's utterance type one by one. Can be obtained in a short time.
[0147]
Finally, the abbreviated sentence complementing unit 350 belongs to the discourse range in which the first morpheme information exists even if the first morpheme information constituting the utterance content of the user is an abbreviated sentence and is not clear as Japanese. If so, the discourse range can be added to the first morpheme information, and the first morpheme information consisting of abbreviated sentences can be complemented.
[0148]
Thus, the abbreviated sentence complementing unit 350 allows the first morpheme information so that the utterance contents constituting the first morpheme information are appropriate Japanese even if the utterance contents constituting the first morpheme information are abbreviated sentences. Since a specific morpheme (such as a morpheme constituting a discourse range) can be complemented, the topic search unit 360 is based on the first morpheme information after completion supplemented by the abbreviated sentence complement unit 350. The optimal second morpheme information related to the information can be acquired, and the answer sentence search unit 370 can select the answer content more suitable for the user's utterance content based on the second morpheme information acquired by the topic search unit 360. Can be output.
[0149]
As a result, even if the input information from the user is an abbreviated sentence, the conversation control device 1 does not use a function such as a neuro network or an AI intelligence, and does not mean what the abbreviated sentence means through past search results. Since the developer of the conversation control device 1 does not need to install a neuro network or AI intelligence, the system of the conversation control device 1 can be constructed more simply.
[0150]
[Example of change]
In addition, this invention is not limited to the said embodiment, The change as shown below can be added.
[0151]
(First change example)
In this modification, the conversation database 500 may be an element storage unit that stores a plurality of pieces of element information indicating the entire set group including a plurality of morpheme sets in association with the set group. Further, the morpheme extraction unit 410 collates the morpheme extracted from the character string with each set group, selects a set group including the extracted morpheme from each set group, and selects an element associated with the selected set group. Information may be extracted as first morpheme information.
[0152]
As shown in FIG. 16, some morphemes included in the character string uttered by the user are similar. For example, as shown in FIG. 16, if the element information indicating the entire group is “gift”, the “gift” is similar to a present, gift, year-end gift, mid-year gift, celebration, etc. (group). Therefore, when there is a morpheme similar to “gift” (such as the present), the morpheme extraction unit 410 can handle the similar morpheme as “gift”.
[0153]
That is, for example, when the morpheme extracted from the character string is “present”, the morpheme extraction unit 410 has “present” as the element information representing “present” as shown in FIG. “Present” can be replaced with “Gift”.
[0154]
This allows the morpheme extraction unit 410 to sort out morphemes that are similar to each other, so that the developer who develops the conversation control device can perform the first corresponding to the semantic space that is grasped from the mutually similar first morpheme information. It is not necessary to create reply contents related to the bimorphic information and the second morpheme information one by one, and as a result, the amount of data stored in the storage unit can be reduced.
[0155]
(Second modified example)
As shown in FIG. 17, in the present modification example, the topic search unit 360 may include a ratio calculation unit 361 and a selection unit 362.
[0156]
The ratio calculation unit 361 compares the first morpheme information extracted by the morpheme extraction unit 410 with each second information, and the ratio of the first morpheme information to the second morpheme information for each second morpheme information. Is a calculation means for calculating.
[0157]
Specifically, the ratio calculation unit 361 to which the topic search command signal is input from the sentence structure analysis unit 430, based on the first morpheme information included in the input topic search command signal, as shown in FIG. One morpheme information is collated with each topic title (second morpheme information) belonging to the discourse range stored in the conversation database 500, and the first morpheme information occupies in each topic title for each topic title. Calculate the percentage.
[0158]
For example, as shown in FIG. 18, when the first morpheme information constituting the utterance sentence uttered by the user is (Sato; *; I like) {I like Sato}, the ratio calculation unit 361 Each morpheme belonging to “case composition” is matched with each morpheme belonging to “case composition” by comparing each morpheme belonging to “case composition” (Sato; *; likes) and each morpheme included in the topic title (Sato; *; likes). The ratio of (Sato; *; I like) is calculated to be 100%. The ratio calculation unit 361 performs these calculations for each topic title, and outputs each calculated ratio to the selection unit 362 as a ratio signal.
[0159]
The selection unit 362 is a selection unit that selects one second morpheme information from each second morpheme information according to the size of each rate calculated by the rate calculation unit 361 for each second morpheme information. is there.
[0160]
Specifically, the selection unit 362 to which the ratio signal is input from the ratio calculation unit 361 selects from among the ratios included in the input ratio signal (element of “case configuration” / element of “topic title” × 100). For example, a topic title with a high ratio is selected (see FIG. 18). The selection unit 362 that has selected a topic title with a high ratio outputs the selected topic title to the answer sentence search unit 370 and the utterance type determination unit 440 as a search result signal. The answer sentence search unit 370 acquires an answer sentence associated with the topic title based on the topic title selected by the selection unit 362.
[0161]
Accordingly, the selection unit 362 calculates the ratio of the first morpheme information to the second morpheme information for each second morpheme information, and the size of each ratio calculated for each second morpheme information. Accordingly, one second morpheme information can be selected from each second morpheme information, so that the selection unit 362 has, for example, first morpheme information (which constitutes the user's utterance content). If second morpheme information with a large proportion of second morpheme information can be acquired from a plurality of second morpheme information groups, the second morpheme information that follows the semantic space grasped from the first morpheme information is more As a result, the answer sentence search unit 370 can make an optimum answer to the utterance content of the user.
[0162]
Further, since the selection unit 362 can select a topic title having a high ratio calculated by the ratio calculation unit 361 from a plurality of topic titles, the selection unit 362 belongs to the “case configuration” included in the user's utterance sentence. Even if each morpheme and each topic title stored in the conversation database 500 do not completely match, it is possible to acquire a topic title closely related to each morpheme belonging to “case composition”.
[0163]
As a result, since the selection unit 362 can acquire a topic title closely related to the “case configuration” constituting the first morpheme information, the developer who develops the conversation control device 1 configures the first morpheme information. Since it is not necessary to store topic titles that completely match “case configuration” in the conversation database 500, the capacity of the conversation database 500 can be reduced.
[0164]
Further, the ratio calculation unit 361 calculates the ratio of the first morpheme information to the second morpheme information for each second morpheme information belonging only to the “discourse range” searched by the discourse range determination unit 340. Therefore, it is not necessary to calculate the ratio of the first morpheme information to the “all” second morpheme information, and the second morpheme information that follows the semantic space composed of the first morpheme information is acquired in a shorter time. As a result, it is possible to quickly output the optimum answer contents for the utterance contents from the user based on the acquired second morpheme information.
[0165]
The ratio calculation unit 361 collates each morpheme of the first morpheme information belonging to each classified attribute and each morpheme of each second morpheme information belonging to each attribute stored in advance for each attribute. It may be a first search means for searching for second morpheme information including each morpheme of the first morpheme information in at least one attribute from the second morpheme information.
[0166]
Specifically, the ratio calculation unit 361 to which the topic search command signal is input, for each “case” (subject; object; action) of the “case configuration” included in the input topic search command signal. ”And each morpheme belonging to“ case ”of the topic title composed of the same“ case ”are collated, and it is determined whether or not the morphemes constituting each“ case ”are the same.
[0167]
For example, as illustrated in FIG. 19, when the “case” morpheme of “case configuration” is (dog; person; bitten) {dog bites a person}, the ratio calculation unit 361 displays those morphemes. Match "dog", "person", and "chewed" with the morpheme "dog", "person", and "chewed" of the topic title consisting of the same "case" that constitutes the morpheme Then, among the morphemes “dog”, “people”, and “chewing” that make up the topic title, the “case composition” morpheme “dog” consisting of the same “case” corresponding to each morpheme, The ratio of “people” and “biting” is calculated (100%).
[0168]
If the element constituting the topic title is (person; dog; bite) {person bites the dog}, the ratio calculation unit 361 performs morphemes belonging to two cases by the same procedure as described above. Therefore, the degree of coincidence of each “case” between the morpheme constituting “case composition” and “topic title” is calculated to be 33% (see FIG. 19).
[0169]
The ratio calculation unit 361 that has calculated the ratio selects a topic title with a high ratio from the ratios, and outputs the selected topic title to the answer sentence search unit 370 and the utterance type determination unit 440 as a search result signal.
[0170]
As a result, the ratio calculation unit 361 displays, for each “case”, each morpheme of the first morpheme information belonging to each classified “case configuration” (subject case, target case, etc.) and a pre-stored topic title. Since the second morpheme information including each morpheme of the first morpheme information in at least one “case” can be searched from each topic title, the ratio calculator 361 is different from the normal word order. If the utterance content is composed of things, for example, “a person bites a dog”, the morpheme of the subject case is “person” and the morpheme of the subject case is “dog”. You can search for matching second morpheme information, and obtain the response contents {"really?" Or "I don't know the meaning"} associated with the second morpheme information (person; dog; bite) can do.
[0171]
That is, since the ratio calculation unit 361 can identify utterance contents that are difficult to identify, for example, “a person bites a dog” and “a dog bites a person”, an optimal answer to the identified utterance contents, For the former, for example, “Really?”, For the latter, for example, “Are you okay?”
[0172]
Further, the ratio calculation unit 361 may search for the second morpheme information including the morpheme of the first morpheme information in at least one attribute from the respective second morpheme information belonging to the “discourse range”. From the second morpheme information, it is no longer necessary to acquire one second morpheme information, the second morpheme information that follows the semantic space composed of the first morpheme information can be acquired in a shorter time, As a result, the conversation control device 1 can quickly output the optimum answer content for the utterance content from the user based on the acquired second morpheme information.
[0173]
The selection unit 362 may select one topic title from among the topic titles according to a predetermined priority order. This priority order means a priority for selection as a topic title. This priority order is predetermined by the developer at the development stage.
[0174]
(Third change example)
As shown in FIG. 20, the present modification is not limited to the above-described embodiment and each modification, and data is transmitted and received via the communication network 800 in the conversation control devices 1 a and 1 b and the communication network 1000. Communication unit 900, conversation databases 500b to 500d connected to communication unit 900, and servers 2a to 2c (conversation control system).
[0175]
Here, the communication network 1000 means a communication network that transmits and receives data. In the present embodiment, for example, the Internet is used. In this modification, the conversation databases 500b to 500d and the servers 2a to 2c are limited for convenience. However, the present invention is not limited to this, and other conversation databases may be provided.
[0176]
Thereby, the conversation control unit 300 refers not only to the conversation database 500a arranged inside the conversation control apparatus 1a but also to other conversation control apparatuses 1b, other conversation databases 500b to 500d, and servers 2a to 2c. Therefore, for example, it is a case where it is not possible to search from the conversation database 500a the discourse range related to each morpheme (first morpheme information) belonging to the “case configuration” included in the topic search command signal. However, by referring to the other conversation control device 1b, conversation databases 500b to 500d, and servers 2a to 2c, it is possible to search the range of conversation related to the above “case structure” and the like based on the user's utterance sentence. A suitable answer sentence can be searched.
[0177]
(Fourth change example)
The sentence structure analysis unit 430 may store in the conversation database 500 each “case configuration” and each “case configuration” constituting the identified first morpheme information. The answer sentence search unit 370 may store each “case structure” and each “morpheme” associated with each “case structure” constituting the searched answer sentence in the conversation database 500.
[0178]
The conversation range determination unit 340 may store the searched conversation range in the conversation database 500. The topic search unit 360 may store the searched second morpheme information in the conversation database 500.
[0179]
The first morpheme information, the second morpheme information, each “case composition” that constitutes the first morpheme information or the second morpheme information, each morpheme associated with each “case composition”, and the retrieved answer sentence Each "case structure" and each morpheme associated with each "case structure" and the searched discourse range are associated with each other and stored in the conversation database 500 or the reversal element database 802 as history morpheme information. be able to.
[0180]
The abbreviated sentence complementing unit 350 does not include a morpheme from each attribute (subject, object, action, etc .; case configuration) constituting the first morpheme information based on the first morpheme information extracted by the phrase analysis unit 420. The attribute is searched, and the history morpheme information stored in the conversation database 500 or the return element database 802 is added to the attribute based on the searched attribute.
[0181]
Specifically, the abbreviated sentence complementing unit 350 to which the topic search command signal is input from the discourse range determination unit 340 is based on the first morpheme information included in the input discourse search command signal, and the utterance including the first morpheme information. If the content is an abbreviated sentence, and the utterance content made up of the first morpheme information is an abbreviated sentence (for example, the subject, object, or action does not have a predetermined morpheme), the conversation database 500 or The history form information stored in the return element database 802 is added to the first morpheme information.
[0182]
That is, assuming that the subject included in the history form information is S1, the object is O1, the action A1, the discourse range is D1, and the omitted first morpheme information is W, the supplemented first morpheme information W1 is S1SW , O1∪W, A1∪W, or D1∪W.
[0183]
The topic search unit 360 collates the first morpheme information W1 supplemented by the abbreviated sentence complement unit 350 and each second morpheme information, and from each “topic title” (second morpheme information), the first morpheme information The second morpheme information including W1 is searched, and the searched topic title is output to the answer sentence search unit 370 and the utterance type determination unit 440 as a search result signal.
[0184]
Thereby, even if the utterance content composed of the first morpheme information is an abbreviated sentence and is not clear as Japanese, the abbreviated sentence complementing unit 350 uses the history form information stored in the conversation database 500, Since the omitted morpheme of the first morpheme information can be complemented, the utterance content including the omitted first morpheme information can be clarified.
[0185]
For this reason, when the abbreviated sentence complementing part 350 is the abbreviated sentence which comprises 1st morpheme information, 1st morpheme information is set so that the utterance content which consists of 1st morpheme information becomes appropriate Japanese. Since the morpheme omitted in FIG. 6 can be supplemented, the topic search unit 360 is based on the first morpheme information supplemented with the morpheme, and the optimal “topic title” (second morpheme) related to the first morpheme information. Information) can be acquired, and the answer sentence search unit 370 can output the answer content more suitable for the user's utterance content based on the optimal “topic title” acquired by the topic search unit 360. .
[0186]
(Fifth change example)
The topic search unit 360 may include a deletion unit 363 and a discourse addition unit 364, as shown in FIG. The deletion unit 363 collates the second morpheme information with the discourse range searched by the discourse range determination unit 340 based on the searched second morpheme information, and determines the discourse from each morpheme constituting the second morpheme information. It is a deletion means for deleting a morpheme that matches the range.
[0187]
Specifically, the topic search unit 360 to which the topic search command signal is input from the abbreviated sentence complement unit 350 receives the first morpheme information included in the input topic search command signal and the discourse determined by the discourse range determination unit 340. Each second morpheme information belonging to the range is collated, and second morpheme information matching the first morpheme information is searched from each second morpheme information.
[0188]
Then, based on the searched second morpheme information, the deletion unit 363 collates the second morpheme information with the morphemes constituting the discourse range determined by the discourse range determination unit 340, and stores the second morpheme information. Then, the morpheme that matches the morpheme constituting the discourse range is deleted, and the second morpheme information from which the morpheme has been deleted is output to the discourse adding unit 364 as a delete signal.
[0189]
That is, the deletion unit 363 removes (removes) the current discourse range D2 (this D2 is made of morpheme) determined by the discourse range determination unit 340 from each morpheme t1 constituting the second morpheme information. If the result is t2, t2 = t1-D2).
[0190]
The discourse adding unit 364 acquires another discourse range associated with the discourse range searched by the discourse range determining unit 340 based on the second morpheme information from which the morpheme has been deleted by the deletion unit 363, and the acquired other This is a discourse adding means for adding the morpheme constituting the discourse range to the second morpheme information.
[0191]
More specifically, if the current discourse range D2 is related to the answer sentence K1, and the discourse range is DK, other discourses related to the answer sentence K1 or the current discourse range D2 (those that have a sibling relationship). Since the range D3 can be expressed as D3 = D2∪DK, the second morpheme information W2 after adding the morpheme constituting the other discourse range D3 can be set to W2 = t2∪D3.
[0192]
For example, each morpheme t1 constituting the second morpheme information is (A movie name; *; interesting) {A movie name is interesting? }, And the current discourse range D2 determined by the discourse range determination unit 340 is (A movie name), the deletion unit 363 first starts from each morpheme t1 (A movie name; *; interesting). The conversation range D2 (A movie name) is deleted, and the deleted result is set to t2 (*; *; interesting) (t2 = t1-D2).
[0193]
When the other conversation range D3 related to the current conversation range D2 (A movie name) is “B movie name”, the second morpheme information after adding the morpheme constituting the other conversation range D3 W2 is t2∪D3, so (B movie name; *; funny) {B movie name is interesting? }.
[0194]
Thereby, when the user's utterance content is “A movie name is interesting?”, The discourse adding unit 364 matches each morpheme (A movie name; *; interesting) constituting the user's utterance content. Second morpheme information (A movie name; *; interesting), other second morpheme information (B movie name; *; interesting) {B movie name is interesting? }, The answer sentence search unit 370 acquires the answer sentence (for example, “B movie name is interesting”) associated with the second morpheme information changed by the discourse adding part 364, The acquired answer text can be output.
[0195]
As a result, the answer sentence search unit 370 does not directly output the answer sentence to the user's utterance contents, but based on the second morpheme information including the morpheme added by the discourse addition part 364, the utterance contents Therefore, the output unit 600 can output a more humane answer sentence based on the answer sentence searched by the answer sentence search unit 370.
[0196]
Note that the discourse adding unit 364 is not limited to adding the other discourse range to the second morpheme information from which the morpheme has been deleted, but to the second morpheme information from which the morpheme has been deleted. (Stored in the database 500) may be added.
[0197]
(Sixth change example)
When the topic search unit 360 cannot search the second morpheme information including the first morpheme information from the second morpheme information, the topic search unit 360 collates the first morpheme information with each answer content, When the answer content including the first morpheme information can be searched from among the first morpheme information, the first search unit may acquire the second morpheme information associated with the searched answer content.
[0198]
Specifically, the topic search unit 360, to which the topic search command signal is input from the abbreviated sentence complement unit 350, based on the first morpheme information included in the input topic search command signal, If the second morpheme information that matches the first morpheme information cannot be obtained from each second morpheme information by collating with the morpheme information, as shown in FIG. The answer sentence associated with the second morpheme information is collated.
[0199]
When the topic search unit 360 determines that the morpheme constituting the first morpheme information (the action or the morpheme associated with the action) is included in the answer sentence by this collation, the answer sentence includes Search for associated second morpheme information.
[0200]
Thereby, even if the topic search unit 360 cannot search the second morpheme information that matches the first morpheme information from each second morpheme information, Since the answer sentence including the morpheme (action or the morpheme associated with the action) that constitutes the user can be identified and the second morpheme information associated with the identified answer sentence can be searched, the user's utterance content 2nd morpheme information corresponding to the 1st morpheme information which constitutes can be searched appropriately.
[0201]
As a result, since the topic search unit 360 can search for the optimal second morpheme information corresponding to the first morpheme information, the answer sentence search unit 370 can search for the optimal second morpheme information searched by the topic search unit 360. Based on the above, it is possible to acquire appropriate answer contents for the user's utterance contents.
[0202]
[program]
The contents described in the conversation control system and the conversation control method can be realized by executing a dedicated program for using a predetermined program language in a general-purpose computer such as a personal computer.
[0203]
Here, as the programming language, the topic that the user wants, the user's emotional level for a certain matter, or the type of statement sentence, affirmative sentence, question sentence, repulsive sentence, etc. are associated with the morpheme according to the semantic content In this embodiment, for example, DKML (Discourse Knowledge Markup Language), XML (eXtensible Markup Language), C language, etc. developed by the inventors can be used.
[0204]
That is, the conversation control device 1 stores data stored in each of the conversation databases 500a to 500d (stored information such as second morpheme information, fixed content, answer sentence, answer type, set group, discourse range, element information, etc.), etc. These parts can be constructed by DKML (Discourse Knowledge Markup Language), XML (eXtensible Markup Language), or the like, and can be realized by executing a program for using the constructed storage information.
[0205]
According to such a program according to the present embodiment, each morpheme constituting the utterance content of the user is identified, the semantic content grasped from each identified morpheme is analyzed, and associated with the analyzed semantic content. A conversation control device, a conversation control system, and a conversation control method that have the effect of being able to output the optimum answer contents corresponding to the user's utterance contents by outputting the answer contents prepared in advance. It can be easily realized by a general purpose computer.
[0206]
In addition, since the developer who develops the conversation control device 1 can hierarchically construct the second morpheme information and the like for searching the answer contents for the user's utterance contents using the language in the database. The conversation control device 1 can acquire the response content for the utterance content from the database through a hierarchical procedure based on the utterance content of the user.
[0207]
In other words, the conversation control device 1 has determined and determined the hierarchy of the user's utterance content (for example, whether the second morpheme information stored in the database is in a higher concept or a lower concept). Appropriate answer contents can be acquired from the answer contents accumulated in advance based on the hierarchy.
[0208]
For this reason, the conversation control device 1 does not collate the first morpheme information composed of the user's utterance content and the previously stored “all” second morpheme information one by one. Since the second morpheme information and the first morpheme information may be collated, the second morpheme information approximate to the first morpheme information can be acquired in a short time.
[0209]
Furthermore, communication between the communication unit 800 and the communication unit 900 may be performed by transmitting and receiving data via a communication network 1000 using a protocol such as DKML. Thereby, for example, when there is no answer content suitable for the user's utterance content in the conversation control device 1, the conversation control device 1 is suitable for the user's utterance content through the communication network 1000 according to the convention such as DKML. It is possible to retrieve the answer contents (described in DKML or the like) and obtain the retrieved answer contents (see FIG. 20).
[0210]
The program can be recorded on a recording medium. As shown in FIG. 23, examples of the recording medium include a hard disk 1100, a flexible disk 1200, a compact disk 1300, an IC chip 1400, and a cassette tape 1500. According to the recording medium on which such a program is recorded, the program can be easily stored, transported, sold, and the like.
[0211]
[Second Embodiment]
(Basic configuration of robot controller)
A second embodiment of the present invention will be described with reference to the drawings. FIG. 24 shows the internal structure of the robot control apparatus 3 according to this embodiment. As shown in the figure, the robot control device 3 is substantially the same as the internal structure of the conversation control device 1 in the first embodiment, but the operation command acquisition unit 371 and each drive unit 610 are replaced with the answer sentence search unit 370. It differs in having -650.
[0212]
Since it is the same as the structure of 1st embodiment and a modified example except this difference, description about structures other than a difference is abbreviate | omitted. In addition to these, each unit shown in the first embodiment and the modified example is provided, but description of each unit will be omitted.
[0213]
In the first embodiment, the conversation control device 1 has described the process of acquiring the optimum answer sentence corresponding to the utterance content based on the utterance content from the user. However, in the present embodiment, each of the plurality of joints The electric motor deployed in the system drives the joint based on the utterance content uttered by the user, and the operation command acquisition unit 371 relates to the utterance content based on the utterance content from the user. The difference is that the operation is performed by the output unit 600 (see FIG. 25). The specific explanation is as follows.
[0214]
The operation command acquisition unit 371 is an operation command acquisition unit that acquires a first operation command associated with the discourse range based on the discourse range searched by the discourse range determination unit 340. Specifically, the operation command acquisition unit 371 to which the topic search command signal is input from the chat range determination unit 340 is associated with the chat range based on the determined chat range included in the input topic search command signal. A first operation command is acquired from the conversation database 500.
[0215]
Here, in the discourse range indicating the morpheme that is related to the utterance content that will be input from the user or the response content to the user, the joint range is driven by driving the joint with at least one electric motor. Are associated with a first operation command for performing a series of operations related to the semantic content of the morphemes constituting the morpheme, and the conversation database 500 (discourse storage means) stores a plurality of discourse ranges in advance. In the present embodiment, the first operation command means an operation pattern associated with the discourse range, as shown in FIG.
[0216]
That is, in the conversation database 500, in the present embodiment, the operation patterns 1 to 4 are associated with the respective conversation ranges A to D, as shown in FIG. As described above, this operation pattern means a command for causing a series of operations related to the semantic contents of the morphemes constituting the discourse range by driving the joint with at least one electric motor. For example, as shown in FIG. 27, if the discourse range is “baseball”, the discourse range “baseball” is associated with an operation pattern 1 indicating a series of instructions for performing a continuous operation related to baseball. It has been.
[0217]
As shown in FIG. 27, in this operation pattern 1, in this embodiment, for example, each part (joint) is driven in the order of “shoulder” → “arm” → “waist” → “waist turn”. It is an instruction for. That is, the operation pattern 1 uses the driving units 610 to 650 in the output unit 600 to drive the shoulders upward by the shoulder driving unit 650 that moves the shoulders, and by the arm driving unit 610 that moves the arms. Means a command to drive the arm in a bending direction, then rotate the waist horizontally by the waist drive unit 640 that moves the waist, and further rotate the waist in the forward or reverse direction by the waist drive unit 640 To do. This series of actions is reminiscent of a mode in which a baseball player is swinging a bat (see “action mode” shown in FIG. 27).
[0218]
In addition, as shown in FIG. 27, if the discourse range is “swimming”, the discourse range “swimming” is associated with an operation pattern 2 indicating a command for performing a continuous operation related to swimming. It has been. That is, as shown in the figure, the motion pattern 2 is, for example, a command for rotating the shoulder by the shoulder drive unit 650 in this embodiment, and the motion is crawled by the swimmer. Such an aspect is recalled.
[0219]
Furthermore, as shown in the figure, if the discourse range is “land”, the discourse range “land” is associated with an operation pattern 3 indicating a command for performing a continuous operation related to the land. ing. That is, as shown in the figure, the operation pattern 3 is driven in the direction in which the arm is bent by the arm driving unit 610, and the shoulder is rotated by the shoulder driving unit 650, as shown in FIG. It is a command for causing the shoulder drive unit 650 to continue to rotate, and the operation is reminiscent of an aspect in which an athlete is running.
[0220]
Specifically, the operation command acquisition unit 371 to which the topic search command signal is input from the talk range determination unit 340, for example, the talk range corresponding to the input topic search command signal (for example, “Discussion range A shown in FIG. 26”). ”), The operation pattern 1 associated with the discourse range A is acquired from the conversation database 500.
[0221]
As shown in FIG. 27, the motion command acquisition unit 371 that has acquired the motion pattern 1 is a command for driving the shoulder upward by the shoulder drive unit 650 based on the acquired motion pattern 1 in this embodiment. Is output to the shoulder drive unit 650, and a command for driving the arm in a direction to bend the arm by the arm drive unit 610 is output to the arm drive unit 610, and then the waist is rotated horizontally by the waist drive unit 640. A command for rotating the waist in the forward or reverse direction by the waist driving unit 640 is further output to the waist driving unit 640.
[0222]
Based on the first operation command acquired by the operation command acquisition unit 371, the output unit 600 drives each joint with an electric motor provided in each of the driving units 610 to 650, thereby In this embodiment, the driving unit 610, the knee driving unit 620, the neck driving unit 630, the waist driving unit 640, and the shoulder driving unit 650. And have.
[0223]
Specifically, each of the driving units 610 to 650 to which various commands are input from the operation command acquisition unit 371 drives a joint with an electric motor based on the input various commands, and a series of corresponding to the various commands. Perform the action. Each of the drive units 610 to 650 can drive the corresponding joint by rotating an electric motor such as a stepping motor by a predetermined angle.
[0224]
The operation command acquisition unit 371 may be an operation acquisition unit that acquires an operation pattern associated with a topic title based on the topic title searched by the topic search unit 360. Here, a morpheme consisting of one character, a plurality of character strings, or a combination thereof is included in the discourse range indicating the morpheme related to the utterance content that will be input from the user or the answer content to the user. A plurality of topic titles are associated with each topic title, and each topic title has a second operation command for performing a series of operations related to the semantic content of each topic title by driving a joint with at least one electric motor. The conversation database 500 stores a plurality of discourse ranges. In the present embodiment, the second operation command means an operation pattern associated with the topic title.
[0225]
That is, as shown in FIG. 29, in the conversation database 500, in this embodiment, the operation patterns 1 to n are associated with the topic titles 1 to n, respectively. As described above, this operation pattern means a command for performing a series of operations related to the semantic contents of the morphemes constituting the topic title by driving the joint with at least one electric motor.
[0226]
For example, if the discourse range is (baseball) and the topic title is (referee; strike; determined), then the baseball A command for causing each of the driving units 610 to 650 to have a mode as indicated is given.
[0227]
Otherwise, if the discourse range is (Baseball) and the topic title is (Judge; Out: Determined) {Judge has determined to be out}, this behavior pattern is An instruction for causing each of the driving units 610 to 650 to have a mode that indicates that the judge is out is included. Furthermore, if the discourse area is (baseball) and the topic title is (judgment; safe; judged) {the judge judges to be safe}, this motion pattern may include a baseball umpire. A command for causing each of the driving units 610 to 650 to have a mode indicating that the officer is safe is given.
[0228]
Specifically, the operation command acquisition unit 371 to which the search result signal is input from the topic search unit 360, for example, based on the topic title (for example, topic title 1) corresponding to the input search result signal. 1 is acquired, and the acquired operation pattern 1 is output to the management unit 310. Similarly to the above, each of the driving units 610 to 650 to which the operation pattern 1 is input from the management unit 310 drives the joint with a corresponding electric motor based on various commands corresponding to the input operation pattern 1. A series of operations corresponding to the operation pattern 1 are executed.
[0229]
Note that the ratio calculation unit 361 calculates the ratio of the first morpheme information to the topic title for each topic title, and the selection unit 362 responds to the size of each ratio calculated for each topic title. One topic title may be selected from the topic titles (see FIG. 17).
[0230]
In this case, for example, the selection unit 362 may acquire a topic title having a large ratio of the first morpheme information (element constituting the user input information) in the topic title from a plurality of topic title groups. If possible, the selection unit 362 can more accurately acquire the topic title that follows the semantic space constituted by the first morpheme information, and as a result, the operation command acquisition unit 371 is based on the acquired topic title. Thus, an operation pattern for performing an operation closer to the content of the utterance from the user can be acquired.
[0231]
(Robot control method using robot controller)
The robot control method by the robot control apparatus having the above configuration can be implemented by the following procedure. FIG. 30 is a flowchart showing the procedure of the conversation control method according to the present embodiment.
[0232]
As shown in the figure, first, the input unit 100 performs a step of acquiring the utterance content input from the user (S201). And the morpheme extraction part 410 performs the step which specifies the character string which comprises utterance content based on the utterance content acquired by the input part 100, and extracts each morpheme from the specified character string (S202, S203).
[0233]
Thereafter, the phrase analysis unit 420 performs a step of grouping each morpheme into a phrase format based on each morpheme extracted by the morpheme extraction unit 410 (S204). In this embodiment, each morpheme belonging to one phrase format is collectively referred to as first morpheme information. The processing of S201 to S204 is the same as the processing of S101 to S104 described in the first embodiment. For this reason, the detailed description about these processes is abbreviate | omitted.
[0234]
Next, the discourse range determination unit 340 collates the extracted first morpheme information with each discourse range group stored in the conversation database 500, and is included in the first morpheme information from each discourse range group. When the discourse range that matches the morpheme can be acquired, the operation command acquisition unit 371 acquires the operation pattern associated with the discourse range from the conversation database 500 (S205, S206).
[0235]
Specifically, the operation command acquisition unit 371 to which the topic search command signal is input from the talk range determination unit 340, when the talk search range is included in the input topic search command signal, the talk range (for example, Based on the “discourse range A” shown in FIG. 26, the operation pattern 1 associated with the discourse range A is acquired from the conversation database 500.
[0236]
As shown in FIG. 27, the operation command acquisition unit 371 that acquired the operation pattern 1 is configured to drive the shoulder upward by the shoulder drive unit 650 based on the acquired operation pattern 1 in the present embodiment, for example. Is output to the shoulder drive unit 650, and an instruction for driving the arm in the direction of bending the arm is output to the arm drive unit 610. Thereafter, the waist is rotated horizontally by the waist drive unit 640. A command to move the waist is output to the waist drive unit 640, and further, a command to rotate the waist forward or backward by the waist drive unit 640 is output to the waist drive unit 640. Thereafter, each of the drive units 610 to 650 to which various commands are input from the operation command acquisition unit 371 drives a joint with a corresponding electric motor based on the input various commands, and thereby a series of corresponding to the various commands. Perform the action.
[0237]
(Operations and effects of robot control device and robot control method)
According to the invention having the above configuration, the operation command acquisition unit 371 acquires the first operation command associated with the discourse range based on the discourse range searched by the discourse range determination unit 340, and each driving unit 610 ˜650 executes a series of operations corresponding to the operation pattern by driving the joint with the corresponding electric motor based on the operation pattern acquired by the operation command acquisition unit 371, the robot control device 3 By executing a series of operations related to the utterance content from the user, it is possible to give the user the impression that the niece is also communicating.
[0238]
That is, since the motion pattern (first motion command) is a command for performing a series of motions related to the meaning content of the discourse range by driving the joint with at least one electric motor, the motion command The acquisition unit 371 can acquire an operation pattern related to the semantic content of the conversation range if the utterance content is included in the utterance content from the user, and each of the drive units 610 to 650 acquires the operation pattern. Based on the motion pattern, the joint can be driven by the corresponding electric motor, and a series of motions corresponding to the motion pattern can be executed.
[0239]
Thereby, for example, the conversation range is “baseball”, and the operation pattern associated with the conversation range “baseball” causes the driving units 610 to 650 to perform operations related to the meaning content of the “baseball”. If so, the robot control device 3 performs an operation like a baseball player swinging a bat by driving a joint with a corresponding electric motor based on an operation pattern associated with “baseball”. Can do.
[0240]
Further, the operation command acquisition unit 371 acquires an operation pattern (second operation command) associated with the topic title based on the topic title searched by the topic search unit 360, and each of the drive units 610 to 650 includes Since a series of operations corresponding to the operation pattern acquired by the operation command acquisition unit 371 can be executed, each of the driving units 610 to 650 receives a user from the topic title searched by the topic search unit 360. A series of operations showing contents closer to the utterance contents can be executed.
[0241]
Furthermore, the ratio calculation unit 361 calculates the ratio of the first morpheme information to the topic title for each topic title, and the selection unit 362 calculates the size of each ratio calculated for each topic title. Accordingly, one topic title can be selected from each topic title.
[0242]
Thereby, for example, if the selection unit 362 can acquire a topic title having a large ratio of the first morpheme information in the topic titles from among a plurality of topic title groups, the semantic space configured from the first morpheme information. As a result, each of the driving units 610 to 650 can obtain the topic title from the user based on the operation pattern associated with the topic title acquired by the selection unit 362. An operation closer to the utterance content can be executed.
[0243]
【The invention's effect】
As described above, according to the present invention, based on the utterance content acquired from the user, it is possible to perform a series of operations related to the utterance content, and use the impression that the niece is also communicating. Can be given to a person.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of a conversation control system according to a first embodiment.
FIG. 2 is a block diagram showing an internal structure of a conversation control unit and a sentence analysis unit in the first embodiment.
FIG. 3 is a diagram showing the contents of each morpheme extracted by a morpheme extraction unit in the first embodiment.
FIG. 4 is a diagram showing the contents of each phrase extracted by a phrase analysis unit in the first embodiment.
FIG. 5 is a diagram showing the contents of “case” specified by the sentence structure analysis unit in the first embodiment.
FIG. 6 is a diagram showing an “uttered sentence type” specified by an utterance type determining unit in the first embodiment.
FIG. 7 is a diagram showing the contents of each dictionary stored in the utterance type database in the first embodiment.
FIG. 8 is a diagram showing the contents of a hierarchical structure built inside the conversation database in the first embodiment.
FIG. 9 is a diagram showing a detailed relationship of a hierarchical structure built inside the conversation database in the first embodiment.
FIG. 10 is a diagram showing the content of a “topic title” constructed within the conversation database in the first embodiment.
FIG. 11 is a diagram showing the content of “answer sentence type” associated with “topic title” built inside the conversation database in the first embodiment.
FIG. 12 is a diagram showing the contents of “topic title” and “answer sentence” belonging to “discourse range” built inside the conversation database in the first embodiment.
FIG. 13 is a diagram showing the contents of reflection element information stored in the reflection element database in the first embodiment.
FIG. 14 is a diagram showing the contents of a wrapping element and a morpheme of the wrapping element stored in the wrapping element database in the first embodiment.
FIG. 15 is a flowchart showing a procedure of a conversation control method according to the first embodiment.
FIG. 16 is a diagram showing utterance contents organized by a morpheme extraction unit in the first modification.
FIG. 17 is a diagram illustrating an internal configuration of a topic search unit in a second modified example.
FIG. 18 is a diagram illustrating a state in which the ratio calculation unit in the second modification collates each morpheme belonging to “case configuration” and each “topic title” for each “topic title”.
FIG. 19 is a diagram illustrating a state in which the ratio calculation unit in the second modified example collates each morpheme belonging to “each component” and each morpheme belonging to “topic title” for each “case”.
FIG. 20 is a diagram showing a schematic configuration of a conversation control system in a third modified example.
FIG. 21 is a diagram illustrating an internal configuration of a topic search unit in a fifth modification example.
FIG. 22 is a diagram illustrating a state in which the topic search unit in the sixth modification collates first morpheme information with a topic title or an answer sentence.
FIG. 23 is a diagram showing a recording medium for storing a program in the first embodiment.
FIG. 24 is a diagram showing an internal configuration of the robot control apparatus according to the second embodiment (No. 1).
FIG. 25 is a diagram showing an internal configuration of the robot control apparatus according to the second embodiment (No. 2).
FIG. 26 is a diagram showing a detailed relationship of a hierarchical structure of discourse range groups constructed within the conversation database in the second embodiment (part 1).
FIG. 27 is a diagram showing the contents of an operation pattern associated with a discourse range in the second embodiment.
FIG. 28 is a diagram showing the contents of a series of operation commands that the operation pattern 1 in the second embodiment commands each drive unit.
FIG. 29 is a diagram showing a detailed relationship of a hierarchical structure of discourse range groups constructed within the conversation database in the second embodiment (part 2).
FIG. 30 is a flowchart showing a procedure of the robot control method according to the second embodiment.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Conversation control apparatus, 2 ... Server, 3 ... Robot control apparatus, 100 ... Input part, 200 ... Voice recognition part, 300 ... Conversation control part, 310 ... Management part, 320 ... Reflective determination part, 330 ... Determination part, 340 ... Discourse range determining unit 350 ... abbreviated sentence complementing unit 360 ... topic searching unit 361 ... ratio calculating unit 362 ... selecting unit 363 ... deleting unit 364 ... discourse adding unit 370 ... answer sentence searching unit 371 Operation command acquisition unit, 400 ... sentence analysis unit, 410 ... morpheme extraction unit, 420 ... phrase analysis unit, 430 ... sentence structure analysis unit, 440 ... utterance type determination unit, 450 ... morpheme database, 460 ... utterance type database, 500 ... conversation database, 600 ... output unit, 610 ... arm drive unit, 620 ... knee drive unit, 630 ... neck drive unit, 640 ... waist drive unit, 650 ... shoulder drive unit, 700 ... voice recognition dictionary storage , 800 ... Communication unit, 801 ... Reflection element database, 802 ... Reverse element database, 900 ... Communication unit, 1000 ... Communication network, 1100 ... Hard disk, 1200 ... Flexible disk, 1300 ... Compact disk, 1400 ... IC chip, 1500 ... Cassette tape

Claims (9)

複数の関節のそれぞれに配備された電動モータが、利用者から発せられた発話内容に基づいて関節を駆動させるロボット制御装置であって、
利用者から入力されるであろう発話内容又は利用者への回答内容に関連性のある形態素を示す談話範囲には、少なくとも一つの前記電動モータで関節を駆動させることによって、該談話範囲を構成する前記形態素の意味内容に関係する一連の動作を行わせるための第一の動作命令が関連付けられており、該談話範囲を予め複数記憶する談話記憶手段と、
利用者から入力された発話内容に基づいて、該発話内容を示す文字列を特定する文字認識手段と、
前記文字認識手段で特定された前記文字列に基づいて、該文字列の最小単位を構成する各形態素を第一形態素情報として抽出する形態素抽出手段と、
前記形態素抽出手段で抽出された前記第一形態素情報と前記各談話範囲とを照合し、該各談話範囲の中から、該第一形態素情報に含まれる前記形態素と一致する前記談話範囲を検索する談話検索手段と、
前記談話検索手段で検索された前記談話範囲に基づいて、該談話範囲に関連付けられた前記第一の動作命令を取得する動作命令取得手段と、
前記動作命令取得手段で取得された前記第一の動作命令に基づいて、前記電動モータで関節を駆動させることによって、該第一の動作命令に対応する一連の動作を実行する駆動手段とを有し、
利用者から入力されるであろう前記発話内容又は利用者への前記回答内容に関連性のある形態素を示す談話範囲には、一つの文字、複数の文字列又はこれらの組み合わせからなる前記形態素を示すと共に前記談話範囲の下位概念である第二形態素情報が複数関連付けられ、前記各第二形態素情報には、少なくとも一つの前記電動モータで関節を駆動させることによって、該第二形態素情報の意味内容に関係する一連の動作を行わせるための第二の動作命令がそれぞれに関連付けてられており、前記談話記憶手段に前記各第二形態素情報と前記各第二の動作命令とが予め記憶され、前記談話検索手段で検索された前記談話範囲に関連付けられている前記各第二形態素情報と、前記形態素抽出手段で抽出された前記第一形態素情報とを照合し、該各第二形態素情報の中から、該第一形態素情報を含む前記第二形態素情報を検索する検索手段を有し、
前記動作命令取得手段は、前記検索手段で検索された前記第二形態素情報に基づいて、該第二形態素情報に関連付けられた前記第二の動作命令を取得し、
前記駆動手段は、前記動作命令取得手段で取得された前記第二の動作命令に基づいて、前記電動モータで関節を駆動させることによって、該第二の動作命令に対応する一連の動作を実行することを特徴とするロボット制御装置。
The electric motor deployed in each of the plurality of joints is a robot control device that drives the joints based on the utterance content uttered from the user,
The discourse range indicating the morpheme related to the utterance content that will be input from the user or the answer content to the user is configured by driving the joint with at least one electric motor. A discourse storage means associated with a first operation command for performing a series of operations related to the semantic content of the morpheme, and storing a plurality of discourse ranges in advance;
Character recognition means for identifying a character string indicating the utterance content based on the utterance content input from the user;
Based on the character string specified by the character recognition means, morpheme extraction means for extracting each morpheme constituting the minimum unit of the character string as first morpheme information;
The first morpheme information extracted by the morpheme extraction unit is compared with each discourse range, and the discourse range that matches the morpheme included in the first morpheme information is searched from the discourse ranges. Discourse search means,
Based on the discourse range searched by the discourse search means, an operation command acquisition means for acquiring the first operation command associated with the discourse range;
Drive means for executing a series of operations corresponding to the first operation command by driving a joint with the electric motor based on the first operation command acquired by the operation command acquisition unit; And
In the discourse range indicating the morpheme related to the utterance content or the answer content to the user that will be input from the user, the morpheme consisting of one character, a plurality of character strings, or a combination thereof is used. A plurality of second morpheme information that is a subordinate concept of the discourse range is associated with each of the second morpheme information, and each second morpheme information has a meaning content of the second morpheme information by driving a joint with at least one electric motor. A second operation command for causing a series of operations related to each to be associated with each other, the second morpheme information and the second operation command are stored in advance in the discourse storage means, The second morpheme information associated with the discourse range searched by the discourse search unit is compared with the first morpheme information extracted by the morpheme extraction unit, From the second morpheme information includes a search means for searching the second morpheme information including said first morpheme information,
The operation command acquisition unit acquires the second operation command associated with the second morpheme information based on the second morpheme information searched by the search unit,
The drive unit executes a series of operations corresponding to the second operation command by driving a joint with the electric motor based on the second operation command acquired by the operation command acquisition unit. A robot controller characterized by that.
請求項1に記載のロボット制御装置であって、
前記検索手段は、
前記形態素抽出手段で抽出された前記第一形態素情報と前記各第二形態素情報とを照合し、該各第二形態素情報毎に、前記第二形態素情報に対して該第一形態素情報が占める割合を計算する計算手段と、
前記計算手段で前記各第二形態素情報毎に計算された前記各割合の大きさに応じて、前記各第二形態素情報の中から、一の前記第二形態素情報を選択する選択手段とを有し、
前記動作命令取得手段は、前記選択手段で選択された前記第二形態素情報に基づいて、該第二形態素情報に関連付けられた前記第二の動作命令を取得することを特徴とするロボット制御装置。
The robot control device according to claim 1,
The search means includes
The first morpheme information extracted by the morpheme extraction means is compared with each second morpheme information, and the ratio of the first morpheme information to the second morpheme information for each second morpheme information A calculation means for calculating
Selection means for selecting one second morpheme information from the second morpheme information according to the size of each ratio calculated for each second morpheme information by the calculation unit. And
The robot control apparatus, wherein the operation command acquisition unit acquires the second operation command associated with the second morpheme information based on the second morpheme information selected by the selection unit.
請求項1または請求項2に記載のロボット制御装置であって、
前記形態素抽出手段で抽出された第1の形態素情報からなる発話内容が省略文であるか否かを判断し、省略文である場合には、前記第1の形態素情報が属する談話範囲の形態素を前記第1の形態素情報に付加して省略文を補完する省略文補完手段を有することを特徴とするロボット制御装置。
The robot control device according to claim 1 or 2,
It is determined whether the utterance content composed of the first morpheme information extracted by the morpheme extraction means is an abbreviated sentence. If the utterance content is an abbreviated sentence, the morpheme in the discourse range to which the first morpheme information belongs is determined. A robot control apparatus comprising: abbreviated sentence complementing means for complementing abbreviated sentences added to the first morpheme information.
複数の関節のそれぞれに配備された電動モータが、利用者から発せられた発話内容に基づいて関節を駆動させるロボット制御方法であって、
利用者から入力されるであろう発話内容又は利用者への回答内容に関連性のある形態素を示す談話範囲には、少なくとも一つの前記電動モータで関節を駆動させることによって、該談話範囲を構成する前記形態素の意味内容に関係する一連の動作を行わせるための第一の動作命令が関連付けられており、該談話範囲を予め複数記憶するステップと、
利用者から入力された発話内容に基づいて、該発話内容を示す文字列を特定するステップと、
特定された前記文字列に基づいて、該文字列の最小単位を構成する各形態素を第一形態素情報として抽出するステップと、
抽出された前記第一形態素情報と前記各談話範囲とを照合し、該各談話範囲の中から、該第一形態素情報に含まれる前記形態素と一致する前記談話範囲を検索するステップと、
検索された前記談話範囲に基づいて、該談話範囲に関連付けられた前記第一の動作命令を取得するステップと、
取得された前記第一の動作命令に基づいて、前記電動モータで関節を駆動させることによって、該第一の動作命令に対応する一連の動作を実行するステップとを有し、
利用者から入力されるであろう前記発話内容又は利用者への前記回答内容に関連性のある形態素を示す談話範囲には、一つの文字、複数の文字列又はこれらの組み合わせからなる前記形態素を示すと共に前記談話範囲の下位概念である第二形態素情報が複数関連付けられ、前記各第二形態素情報には、少なくとも一つの前記電動モータで関節を駆動させることによって、該第二形態素情報の意味内容に関係する一連の動作を行わせるための第二の動作命令がそれぞれに関連付けてられており、前記該談話範囲を予め複数記憶するステップで前記各第二形態素情報と前記各第二の動作命令とが予め記憶され、検索された前記談話範囲に関連付けられている前記各第二形態素情報と、抽出された前記第一形態素情報とを照合し、該各第二形態素情報の中から、該第一形態素情報を含む前記第二形態素情報を検索するステップと、
検索された前記第二形態素情報に基づいて、該第二形態素情報に関連付けられた前記第二の動作命令を取得するステップと、
取得された前記第二の動作命令に基づいて、前記電動モータで関節を駆動させることによって、該第二の動作命令に対応する一連の動作を実行するステップとを有することを特徴とするロボット制御方法。
The electric motor deployed in each of the plurality of joints is a robot control method for driving the joints based on the utterance content uttered from the user,
The discourse range indicating the morpheme related to the utterance content that will be input from the user or the answer content to the user is configured by driving the joint with at least one electric motor. A first operation instruction for causing a series of operations related to the semantic content of the morpheme to be associated, and storing a plurality of discourse ranges in advance;
Identifying a character string indicating the utterance content based on the utterance content input by the user;
Extracting each morpheme constituting the minimum unit of the character string as first morpheme information based on the identified character string;
Collating the extracted first morpheme information with each discourse range, and searching the discourse range that matches the morpheme included in the first morpheme information from each discourse range;
Obtaining the first operation command associated with the discourse range based on the searched discourse range;
Performing a series of operations corresponding to the first operation command by driving a joint with the electric motor based on the acquired first operation command;
In the discourse range indicating the morpheme related to the utterance content or the answer content to the user that will be input from the user, the morpheme consisting of one character, a plurality of character strings, or a combination thereof is used. A plurality of second morpheme information that is a subordinate concept of the discourse range is associated with each of the second morpheme information, and each second morpheme information has a meaning content of the second morpheme information by driving a joint with at least one electric motor. Each of the second morpheme information and each of the second operation commands is stored in advance in a step of storing a plurality of the discourse ranges in advance. Are collated with each of the second morpheme information that is stored in advance and associated with the searched discourse range, and the extracted first morpheme information. From the, retrieving the second morpheme information including said first morpheme information,
Obtaining the second operation command associated with the second morpheme information based on the retrieved second morpheme information;
And a step of executing a series of operations corresponding to the second operation command by driving a joint with the electric motor based on the acquired second operation command. Method.
請求項4に記載のロボット制御方法であって、
抽出された前記第一形態素情報と前記各第二形態素情報とを照合し、該各第二形態素情報毎に、前記第二形態素情報に対して該第一形態素情報が占める割合を計算するステップと、
前記各第二形態素情報毎に計算された前記各割合の大きさに応じて、前記各第二形態素情報の中から、一の前記第二形態素情報を選択するステップと、
選択された前記第二形態素情報に基づいて、該第二形態素情報に関連付けられた前記第二の動作命令を取得するステップとを有することを特徴とするロボット制御方法。
The robot control method according to claim 4,
Collating the extracted first morpheme information with each second morpheme information, and calculating a ratio of the first morpheme information to the second morpheme information for each second morpheme information; ,
Selecting one second morpheme information from the second morpheme information according to the size of each ratio calculated for each second morpheme information;
Obtaining the second operation command associated with the second morpheme information based on the selected second morpheme information.
請求項4または請求項5に記載のロボット制御方法であって、
抽出された前記第1の形態素情報からなる発話内容が省略文であるか否かを判断し、省略文である場合には、前記第1の形態素情報が属する談話範囲の形態素を前記第1の形態素情報に付加して省略文を補完するステップを有することを特徴とするロボット制御方法。
The robot control method according to claim 4 or 5, wherein:
It is determined whether or not the utterance content made of the extracted first morpheme information is an abbreviated sentence. A robot control method comprising a step of adding an abbreviated sentence by adding to morpheme information.
複数の関節のそれぞれに配備された電動モータが、利用者から発せられた発話内容に基づいて関節を駆動させるロボット制御装置のプログラムであって、コンピュータに、
利用者から入力されるであろう発話内容又は利用者への回答内容に関連性のある形態素を示す談話範囲には、少なくとも一つの前記電動モータで関節を駆動させることによって、該談話範囲を構成する前記形態素の意味内容に関係する一連の動作を行わせるための第一の動作命令が関連付けられており、該談話範囲を予め複数記憶するステップと、
利用者から入力された発話内容に基づいて、該発話内容を示す文字列を特定するステップと、
特定された前記文字列に基づいて、該文字列の最小単位を構成する各形態素を第一形態素情報として抽出するステップと、
抽出された前記第一形態素情報と前記各談話範囲とを照合し、該各談話範囲の中から、該第一形態素情報に含まれる前記形態素と一致する前記談話範囲を検索するステップと、
検索された前記談話範囲に基づいて、該談話範囲に関連付けられた前記第一の動作命令を取得するステップと、
取得された前記第一の動作命令に基づいて、前記電動モータで関節を駆動させることによって、該第一の動作命令に対応する一連の動作を実行するステップとを有し、
利用者から入力されるであろう前記発話内容又は利用者への前記回答内容に関連性のある形態素を示す談話範囲には、一つの文字、複数の文字列又はこれらの組み合わせからなる前記形態素を示すと共に前記談話範囲の下位概念である第二形態素情報が複数関連付けられ、前記各第二形態素情報には、少なくとも一つの前記電動モータで関節を駆動させることによって、該第二形態素情報の意味内容に関係する一連の動作を行わせるための第二の動作命令がそれぞれに関連付けてられており、前記該談話範囲を予め複数記憶するステップで前記各第二形態素情報と前記各第二の動作命令とが予め記憶され、検索された前記談話範囲に関連付けられている前記各第二形態素情報と、抽出された前記第一形態素情報とを照合し、該各第二形態素情報の中から、該第一形態素情報を含む前記第二形態素情報を検索するステップと、
検索された前記第二形態素情報に基づいて、該第二形態素情報に関連付けられた前記第二の動作命令を取得するステップと、
取得された前記第二の動作命令に基づいて、前記電動モータで関節を駆動させることによって、該第二の動作命令に対応する一連の動作を実行するステップとを有する処理を実行させるためのプログラム。
An electric motor deployed in each of a plurality of joints is a program for a robot control device that drives a joint based on the content of speech uttered by a user,
The discourse range indicating the morpheme related to the utterance content that will be input from the user or the answer content to the user is configured by driving the joint with at least one electric motor. A first operation instruction for causing a series of operations related to the semantic content of the morpheme to be associated, and storing a plurality of discourse ranges in advance;
Identifying a character string indicating the utterance content based on the utterance content input by the user;
Extracting each morpheme constituting the minimum unit of the character string as first morpheme information based on the identified character string;
Collating the extracted first morpheme information with each discourse range, and searching the discourse range that matches the morpheme included in the first morpheme information from each discourse range;
Obtaining the first operation command associated with the discourse range based on the searched discourse range;
Performing a series of operations corresponding to the first operation command by driving a joint with the electric motor based on the acquired first operation command;
In the discourse range indicating the morpheme related to the utterance content or the answer content to the user that will be input from the user, the morpheme consisting of one character, a plurality of character strings, or a combination thereof is used. A plurality of second morpheme information that is a subordinate concept of the discourse range is associated with each of the second morpheme information, and each second morpheme information has a meaning content of the second morpheme information by driving a joint with at least one electric motor. Each of the second morpheme information and each of the second operation commands is stored in advance in a step of storing a plurality of the discourse ranges in advance. Are collated with each of the second morpheme information that is stored in advance and associated with the searched discourse range, and the extracted first morpheme information. From the, retrieving the second morpheme information including said first morpheme information,
Obtaining the second operation command associated with the second morpheme information based on the retrieved second morpheme information;
A program for executing processing having a step of executing a series of operations corresponding to the second operation command by driving a joint with the electric motor based on the acquired second operation command .
請求項7に記載のプログラムであって、
抽出された前記第一形態素情報と前記各第二形態素情報とを照合し、該各第二形態素情報毎に、前記第二形態素情報に対して該第一形態素情報が占める割合を計算するステップと、
前記各第二形態素情報毎に計算された前記各割合の大きさに応じて、前記各第二形態素情報の中から、一の前記第二形態素情報を選択するステップと、
選択された前記第二形態素情報に基づいて、該第二形態素情報に関連付けられた前記第二の動作命令を取得するステップとを有する処理を実行させるためのプログラム。
The program according to claim 7,
Collating the extracted first morpheme information with each second morpheme information, and calculating a ratio of the first morpheme information to the second morpheme information for each second morpheme information; ,
Selecting one second morpheme information from the second morpheme information according to the size of each ratio calculated for each second morpheme information;
A program for executing a process including a step of acquiring the second operation command associated with the second morpheme information based on the selected second morpheme information.
請求項7または請求項8に記載のプログラムであって、
抽出された前記第1の形態素情報からなる発話内容が省略文であるか否かを判断し、省略文である場合には、前記第1の形態素情報が属する談話範囲の形態素を前記第1の形態素情報に付加して省略文を補完するステップを有することを特徴とするプログラム。
A program according to claim 7 or claim 8, wherein
It is determined whether or not the utterance content including the extracted first morpheme information is an abbreviated sentence. If the utterance content is an abbreviated sentence, the morpheme in the discourse range to which the first morpheme information belongs is set to the first morpheme information. A program comprising a step of supplementing abbreviated sentences by adding to morpheme information.
JP2002180335A 2002-06-20 2002-06-20 Robot control apparatus, robot control method and program Expired - Fee Related JP3923378B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002180335A JP3923378B2 (en) 2002-06-20 2002-06-20 Robot control apparatus, robot control method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002180335A JP3923378B2 (en) 2002-06-20 2002-06-20 Robot control apparatus, robot control method and program

Publications (2)

Publication Number Publication Date
JP2004017269A JP2004017269A (en) 2004-01-22
JP3923378B2 true JP3923378B2 (en) 2007-05-30

Family

ID=31177498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002180335A Expired - Fee Related JP3923378B2 (en) 2002-06-20 2002-06-20 Robot control apparatus, robot control method and program

Country Status (1)

Country Link
JP (1) JP3923378B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5877418B2 (en) * 2011-12-09 2016-03-08 株式会社国際電気通信基礎技術研究所 Scenario generation apparatus and scenario generation method
WO2017199585A1 (en) * 2016-05-19 2017-11-23 シャープ株式会社 Robot, robot operation method, and program
KR101964300B1 (en) * 2017-11-14 2019-04-01 한국과학기술연구원 Apparatus and method for implementing motion of robot using knowledge model

Also Published As

Publication number Publication date
JP2004017269A (en) 2004-01-22

Similar Documents

Publication Publication Date Title
JP3997105B2 (en) Conversation control system, conversation control device
JP4279883B2 (en) Conversation control system, conversation control method, program, and recording medium recording program
JP3923378B2 (en) Robot control apparatus, robot control method and program
JP4110012B2 (en) Conversation control device and conversation control method
JP2004258902A (en) Conversation controller, and conversation control method
JP4110011B2 (en) Conversation control device and conversation control method
JP4413486B2 (en) Home appliance control device, home appliance control method and program
JP4038399B2 (en) Face image display device, face image display method and program
JP4913850B2 (en) Information processing system and information processing method
JP4205370B2 (en) Conversation control system, conversation control method and program
JP4751563B2 (en) Product discharge device, product discharge control method and program
JP3927067B2 (en) Conversation control system, conversation control device, conversation control method, program, and recording medium recording program
JP4434553B2 (en) Information processing system, information processing apparatus, information processing method, program, and recording medium recording the program
JP4402868B2 (en) Information acquisition apparatus, information acquisition method, and program
JP4243079B2 (en) Premium discharging device, premium discharging control method and program
JP4109964B2 (en) Information output device, information output method, and program
JP4274760B2 (en) Map output device, map output method and program
JP4188622B2 (en) Access system and access control method
JP4253487B2 (en) Information acquisition device
JP4832701B2 (en) Game machine, game control method, control program
JP3939613B2 (en) Race game apparatus, race game control method, and program
JP4116367B2 (en) Conversation control system, conversation control method, program
JP3947421B2 (en) Conversation control system, conversation control method, program, and recording medium recording program
JP2004062685A (en) Information processing system, information processing method and program
JP4316839B2 (en) Conversation control device and conversation control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061010

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061122

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070221

R150 Certificate of patent or registration of utility model

Ref document number: 3923378

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100302

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100302

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100302

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 5

S631 Written request for registration of reclamation of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313631

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130302

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140302

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees