以下、図面と共に本発明に係る機能実行指示システムの実施形態について詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。
図1に本実施形態に係る機能実行指示システムであるタスク判定装置10を示す。タスク判定装置10は、通信端末20に対して予め設定された1つ以上の(あるいは複数の)機能の実行を指示する装置である。本実施形態では、実行される機能をタスクと呼ぶ。後述するように実行が指示されるタスクは、通信端末20のユーザの発話に基づいて判断される。また、タスクの実行の指示は、通信端末20のユーザの発話をトリガとして行われる。即ち、ユーザが発話することでタスクが実行される。
タスク判定装置10によって実行が指示されるタスクは、時刻が用いられて実行されるタスクを含む。例えば、録画予約、録画再生及び視聴予約等のタスクである。録画予約は、テレビ番組、配信動画等の動画の録画を行うタスクであり、録画を行う時刻を用いる。録画再生は、録画された動画の再生を行うタスクであり、再生対象の動画が録画された時刻を用いる。視聴予約は、指定(予約)された時刻に動画の受信及び再生を行ってユーザに動画を視聴させるタスクであり、指定された時刻を用いる。なお、タスク判定装置10によって実行が指示されるタスクは、上記以外のタスクを含んでいてもよく、また、実行に時刻が用いられないタスクを含んでいてもよい。
通信端末20は、ユーザによって用いられる装置であり、例えば、携帯電話機(スマートフォンを含む)又はPC(パーソナルコンピュータ)に相当する。通信端末20は、通信網(例えば、移動体通信網)を介してタスク判定装置10及び音声認識装置30等と通信を行うことができる。
上記のタスクは、ユーザの音声をトリガとして実行されるため、通信端末20はユーザの音声を入力する機能(音声認識インタフェース)を有している。また、通信端末20は、タスク判定装置10からの指示を受けてタスクを実行する機能、例えば、情報の受信機能、情報処理機能及び表示機能(例えば、動画の受信、録画、再生機能)等を有している。
即ち、通信端末20は、1つ以上の(あるいは複数の)タスクを実行する機能実行部を有している。例えば、通信端末20は、タスクに対応するアプリケーションプログラムを予め記憶しておき、記憶したアプリケーションプログラムを実行(起動)することによってタスクを実行する。通信端末20によって実行されるタスクは、後述するようにタスク判定装置10によって指示される。また、タスクの実行は、アプリケーションを実行する以外にも、通信網からタスクに応じた情報を取得すること等によって行われてもよい。
音声認識装置30は、音声(音声データ)を入力して、入力した音声に対して音声認識を行い、音声認識を行った結果を出力する装置である。具体的には、音声認識装置30は、通信端末20から音声データを受信する。音声認識装置30は、音声認識エンジンを有しており、当該音声認識エンジンを用いて音声認識を行う。音声認識自体は、従来の任意の音声認識方法を利用することができる。音声認識装置30は、音声認識結果を文章として取得して、通信端末20に送信する。なお、ここでいう文章には、例えば、単語の集合(1以上の単語からなる単語群)等の音声認識によって得られ、タスクの決定に用いることができる任意の文字情報が含まれえる。
タスク判定装置10によるタスクの実行の指示は、次のように行われる。まず、ユーザが、通信端末20に対して実行したいタスクに応じた発話を行う。当該発話がなされると、通信端末20がユーザの音声(発話)を入力する。入力された音声は、通信端末20から音声認識装置30に送信される。音声認識装置30は、通信端末20から音声を受信し、受信した音声に対して音声認識を行う。音声認識装置30は、音声認識の結果である文章(テキスト)を通信端末20に送信する。通信端末20は、音声認識の結果を受信して、更にタスク判定装置10に送信する。
タスク判定装置10は、当該音声認識の結果を受信して、その音声認識の結果に基づいて実行すべきタスクを決定(判定)して、通信端末20に対して当該タスクの実行を指示する。例えば、タスク判定装置10は、実行すべきタスクを示す情報を通信端末20に送信する。通信端末20は、タスク判定装置10からの指示を受信して、当該指示に応じたタスクを実行する。なお、音声認識の結果である文章あるいは単語の集合はいったん通信端末20に送られることなく、音声認識装置30からタスク判定装置10へ直接送信されてもよい。
引き続いて、本実施形態に係るタスク判定装置10の機能を説明する。図1に示すようにタスク判定装置10は、機能実行指示部11と、文章入力部12と、実行機能決定部13と、時刻情報抽出部14と、時刻特定部15とを備えて構成される。
機能実行指示部11は、通信端末20に対して、1つ以上の(あるいは複数の)機能の実行を指示する機能部である。具体的には、機能実行指示部11は、タスクを実行させるコマンドを通信端末20に送信することでタスクの実行を指示する。機能実行指示部11によって実行が指示される内容は、後述する機能部12〜15によって決定される。
文章入力部12は、文章(入力文、テキストデータ)を入力する機能部である。具体的には、文章入力部12は、通信端末20から、音声認識装置30による音声認識の結果である文章を受信することで文章を入力する。文章入力部12に入力される文章は、通信端末20に対するユーザの発話単位である。即ち、一回の発話に含まれる文章を一つの単位として扱う。文章入力部12は、入力した文章を実行機能決定部13及び時刻情報抽出部14に出力する。
実行機能決定部13は、文章入力部12によって入力された文章に基づいて、1つ以上の(あるいは複数の)タスクから、機能実行指示部11によって実行が指示されるタスクを決定する機能部である。実行機能決定部13は、文章入力部12からユーザの発話である文章を入力して、タスク一覧から当該発話が意図する内容に最も近いタスクを選択する。即ち、実行機能決定部13は、文章の意図解釈を行う。例えば、実行機能決定部13は、機械学習によって得られた学習モデル(判定ルール)を用いてタスクを決定(判定)することとしてもよい。タスクの決定は、文章をどのタスクに分類するかという文書分類問題に帰着される。
そこで、例えば、予めタスクに対応付いた発話事例である文章を収集する。この発話事例を正解データ(サンプルデータ)として機械学習を行い、機械学習によって得られた学習モデルを用いてタスクを決定する。実行機能決定部13は、文章入力部12から入力した文章を学習モデルに基づくタスク識別器に入力して、当該タスク識別器によってタスクを決定する。なお、実行機能決定部13は、機械学習によって得られた学習モデルに基づくタスク識別器を利用できればよく、必ずしもタスク判定装置10において機械学習が行われる必要はない。その場合、タスク判定装置10は上記の機械学習を行った装置から、学習モデルを示す情報を予め取得しておく。
また、実行機能決定部13は、上記の機械学習による方法以外にも予めタスク毎に単語、あるいはカテゴリにスコアを設定しておき、文章に含まれる単語、あるいは当該単語に対応付けられたカテゴリから、スコアを特定し、そのスコアに基づいてタスクを決定してもよい。例えば、合計のスコアが最も高いタスクを、実行が指示されるタスクに決定することとしてもよい。この場合の単語又はカテゴリのスコアは、タスクとの関連度合に応じて定められている。また、実行機能決定部13による実行が指示されるタスクの決定は、入力された文章に基づくものであればよく上記以外の任意の方法を用いることができる。実行機能決定部13は、実行が指示されるタスクを決定すると、機能実行指示部11及び時刻特定部15に対して当該タスクを通知する。
時刻情報抽出部14は、文章入力部12によって入力された文章から時刻を示す時刻情報を抽出する機能部である。時刻情報抽出部14によって抽出される時刻情報は、タスクの実行には不十分な表現、即ち、省略されたもの又は曖昧なものであってもよい。例えば、「7時」等の日付が含まれないもの、あるいは、午前なのか午後なのかが分からないものであってもよい。また、時刻情報は、相対的な時刻を示すものであってもよい。
時刻情報抽出部14は、文章入力部12から文章を入力して、従来の任意の方法で時刻情報を抽出する。例えば、時刻情報抽出部14は、時刻情報を抽出するための正規表現を予め記憶しておき、正規表現を用いて時刻情報を抽出する。例えば、0〜24時の1日の中の時間を抽出する正規表現を記憶しておくことで、「7時からのドラマを予約して」との文章から「7時」という時刻情報を抽出することができる。また、正規表現以外の抽出ルールを設定しておいてもよい。例えば、「月9の再生をお願い」との文章から、「月9」との部分を抽出して「月曜日午後9時」という時刻情報を抽出する。あるいは、「8時からの朝ドラ予約して」との文章から、「8時」及び「朝ドラ」との部分を抽出して「午前8時」という時刻情報を抽出する。あるいは、条件付き確率場を利用して時刻情報を抽出してもよい。
時刻情報は、ISO8601等の正規化表現の情報としてもよい。これにより、後段の処理コストを削減することができる。例えば、時刻情報によって示される時刻が2018年1月30日07時00分00秒である場合、時刻情報は「2018−01−30T07:00:00」とされる。時刻を示す年月日時分秒のうち、文章から抽出できない部分、即ち曖昧な部分について、時刻情報では不明であることを示す表現とする。例えば、文章から抽出できない部分は、「*」との表現とする。例えば、上記の例のように文章から「7時」を抽出できた場合には、年月日時分秒のうち、時以外が不明であるため、時刻情報は「****−**−**T07:**:**」とされる。この表現によって、後段の処理でどの部分を補完すればよいか明確化することができる。また、上記以外の情報、例えば、曜日及び午前午後等を示す情報を時刻情報に含めてもよい。
なお、文章から抽出できない部分の一部について、予め補完するためのルールを設けておき、補完することとしてもよい。例えば、年月日時分秒のうち、分秒が文章から抽出できない場合には、分秒を全て「0」とすることとしてもよい。上記の例の場合には、時刻情報は「****−**−**T07:00:00」とされる。タスクの実行をするためのユーザの発話である文章から分秒が抽出できない場合には、当該文章は分秒については暗黙的に「0」を示していると考えられるためである。
また、文章から抽出した時刻情報が、複数の候補があると考えられる場合には、複数の候補を全て時刻情報としてもよい。例えば、年月日時分秒のうち、時が0〜12時であった場合には、午前、午後のそれぞれの時刻であることが考えられる。この場合、午前、午後のそれぞれの時刻を時刻情報とする。上記の例の場合には、時刻情報は、午前7時を示す「****−**−**T07:00:00」及び午後7時(19時)を示す「****−**−**T19:00:00」とされる。時刻情報抽出部14は、抽出した時刻情報を時刻特定部15に出力する。
また、時刻情報抽出部14は、文章入力部12によって入力された文章から、時刻情報以外の時刻特定部15による時刻の特定に用いられる補足情報を抽出することとしてもよい。例えば、時刻情報抽出部14は、補足情報として抽出すべきキーワードを予め記憶しておき、文章から当該キーワードを抽出することとしてもよい。補足情報は、直接的には時刻を示すものではないが、時刻の推定に用いることができる情報である。例えば、「ドラマ」との単語を補足情報とすることができる。「ドラマ」は、午後に放送されることが多いため、時刻情報が午後を示すものであるとの推定に用いることができる。補足情報の抽出は、予め設定したキーワード以外にも、正規表現及びその他の抽出ルールによって行うことができる。時刻情報抽出部14は、抽出した補足情報を時刻特定部15に出力する。
時刻特定部15は、実行機能決定部13によって決定されたタスクに応じて、時刻情報抽出部14によって抽出された時刻情報に基づいて、当該タスクの実行に用いられる時刻を特定する機能部である。時刻特定部15は、時刻情報抽出部14によって抽出された時刻情報によって示される時刻から、タスクの実行に用いることができるように絶対的な時刻(正式な時刻)を特定する。即ち、実行機能決定部13は、タスクに係る時制推定を行う。時刻特定部15は、実行機能決定部13によって決定されたタスクに応じて、当該タスクの実行に用いられる時刻として、未来又は過去の時刻を特定する。
時刻特定部15は、実行機能決定部13から決定したタスクの通知を受ける。時刻特定部15は、時刻情報抽出部14から時刻情報を入力する。時刻特定部15は、時刻の特定を行うために図2に示すタスク判定結果と相対関係情報とが対応付けられた情報を予め記憶しておく。タスク判定結果は、タスクを示す情報であり、実行機能決定部13から通知されたタスクに対応するものである。相対関係情報は、時刻情報に基づいてどのように時刻を特定すべきかを示す情報である。具体的には、相対関係情報は、現在時刻と特定すべき時刻との関係を示している。
時刻特定部15は、図2に示す情報において、実行機能決定部13から通知されたタスクに対応付けられた相対関係情報を読み出す。時刻特定部15は、時刻情報によって示される時刻と現在時刻(実行するタスクを決定する時点の時刻)とから、相対関係情報によって示されるように時刻を特定する。時刻特定部15は、時計機能を有しており、現在時刻を把握している。例えば、時刻特定部15は、年月日が不明な(時分秒が分かっている)時刻情報について、年月日を特定する。
図2に示すように、時刻特定部15は、未来の時刻を用いるタスク(例えば、録画予約における録画時刻、又は視聴予約における予約時刻)では直近の未来の時刻(日付、年月日)をタスクの実行に用いられる時刻として特定し、過去の時刻を用いるタスク(例えば、録画再生における録画時刻)では直近の過去の時刻(日付、年月日)をタスクの実行に用いられる時刻として特定する。
例えば、文章が「19時からのドラマを予約して」というのものであった場合、決定されたタスクは「録画予約」であり、時刻情報は、「****−**−**T19:00:00」となる。この場合、「録画予約」のタスクに対応付けられた相対関係情報は「直近の未来」である。現在時刻が「2018−01−30T13:00:00」であるとすると、時刻特定部15は、時刻情報に示される時刻のうち、直近の未来である「2018−01−30T19:00:00」をタスクの実行に用いられる時刻として特定する。
また、文章が「8時からの朝ドラを予約」というのものであった場合、決定されたタスクは「録画予約」である。時刻情報は、「8時」及び「朝ドラ」との部分から、「****−**−**T08:00:00」となる。この場合、「録画予約」のタスクに対応付けられた相対関係情報は「直近の未来」である。現在時刻が「2018−01−30T13:00:00」であるとすると、時刻特定部15は、時刻情報に示される時刻のうち、直近の未来である「2018−01−31T08:00:00」をタスクの実行に用いられる時刻として特定する。
時刻特定部15は、時刻情報抽出部14によって抽出された補足情報にも基づいて時刻を特定してもよい。例えば、補足情報が、特定される時刻(即ち、時刻情報に示される時刻)が午前又は午後の何れかを示すものであり、時刻情報が午前及び午後の両方の時刻を示すものである場合、時刻特定部15は、補足情報に基づいて午前か午後かの特定を行う。
例えば、文章が「7時からのドラマを予約して」というのものであった場合、時刻情報は、「****−**−**T07:00:00」及び「****−**−**T19:00:00」となる。また、補足情報が、特定される時刻(即ち、時刻情報に示される時刻)が午後であることを示す「ドラマ」であった場合、時刻特定部15は、2つの時刻情報のうち、「****−**−**T19:00:00」を時刻の特定に用いる。
文章から抽出される補足情報は、実行機能決定部13によって決定されたタスクに応じたものであってもよい。例えば、上記の「ドラマ」との補足情報は、録画予約、録画再生及び視聴予約といったテレビ番組、配信動画等に係るタスクの場合のみに抽出されることとしてもよい。
また、補足情報は、午前又は午後を特定するものには限られない。例えば、タスクがスケジュール予約であり、補足情報が「会議」である場合を考える。通常、会社等において会議が行われるのは業務時間(例えば、午前9時〜午後5時)であるため、補足情報が「会議」であれば、上記の業務時間内で時刻を特定する。
上述したように時刻特定部15は、年月日時分秒のうち、年月日(日付)が不明な時刻情報について年月日を特定する。あるいは、上述したように時刻特定部15は、午前午後が不明な時刻情報について、時間(午前午後)を特定する。あるいは、時刻情報が曜日を示すものである場合に、時刻特定部15は、時刻情報(曜日)から年月日(日付)を特定することとしてもよい。例えば、月曜との時刻情報から、2018年1月15日との日付を特定することとしてもよい。また、時刻特定部15は、時刻情報のうち、上記以外が不明なものについても、同様に特定することとしてもよい。時刻特定部15は、特定した時刻を機能実行指示部11に通知する。
機能実行指示部11は、時刻特定部15によって特定された時刻を用いた、実行機能決定部13によって決定されたタスクの実行を指示する。機能実行指示部11は、実行機能決定部13からタスクの通知を、時刻特定部15から時刻の通知をそれぞれ受ける。機能実行指示部11は、例えば、通知されたタスク及び時刻を示す情報をコマンドに含めることで通信端末20に当該時刻を用いた当該タスクの実行を行わせる。例えば、録画予約のタスクであれば、特定された時刻に録画予約が行われるように指示する。
なお、上述した時刻情報抽出部14及び時刻特定部15による処理は、実行機能決定部13によって決定されたタスクが、時刻を用いるものである場合のみに行われてもよい。また、時刻特定部15は、実行機能決定部13によって決定されたタスクに応じて、時刻情報抽出部14によって抽出された時刻情報がタスクの実行に不十分であるか否かを判断して、不十分と判断した場合に時刻を特定することとしてもよい。上記の判断は、タスク毎に予め設定された判断ルールに基づいて行うことができる。時刻情報がタスクの実行を行うのに十分なものであった場合、時刻特定部15による時刻の特定を行わずに、機能実行指示部11は、時刻情報によって示される時刻を用いたタスクの実行を指示する。以上が、本実施形態に係るタスク判定装置10の機能である。
引き続いて、図3のフローチャートを用いて、本実施形態に係るタスク判定装置10で実行される処理(タスク判定装置10が行う動作方法)を説明する。本処理は、通信端末20から、ユーザの発話である文章が送信される毎に行われる。当該文章は、上述したように、音声認識装置30の音声認識によって音声から得られたものである。本処理では、文章入力部12によって、音声認識の結果である文章が受信されて入力される(S01)。続いて、実行機能決定部13によって、文章に基づいて実行が指示されるタスクが決定される(S02)。
また、時刻情報抽出部14によって、文章から時刻を示す時刻情報が抽出される(S03)。この際、併せて補足情報が抽出されてもよい。タスクの決定及び時刻情報の抽出が行われると、時刻特定部15によって、当該タスクに応じて、時刻情報に基づいて当該タスクの実行に用いられる時刻が特定される(S04)。この際、補足情報にも基づいて時刻が特定されてもよい。続いて、機能実行指示部11によって、時刻特定部15によって特定された時刻を用いた、実行機能決定部13によって決定されたタスクの実行が通信端末20に対して指示される(S05)。通信端末20では、指示に従って、特定された時刻を用いたタスクが実行される。以上が、本実施形態に係るタスク判定装置10で実行される処理である。
本実施形態では、決定されたタスクに応じて、入力された文章から抽出された時刻情報に基づいて、機能の実行に用いられる時刻が特定される。従って、文章に含まれる時刻表現、即ち、ユーザの発話によって示される時刻が、省略されたもの又は曖昧なもの等であった場合でも、実行が指示されるタスクに応じて適切にタスクの実行に用いられる時刻が特定される。よって本実施形態によれば、文章に基づいてタスクを実行する際に文章に含まれる時刻表現が、省略されたもの又は曖昧なもの等であった場合でも適切にタスクを実行することができる。不適切なタスクが実行された場合、タスクの再実行等が必要になる。本実施形態では、不適切なタスクの実行を防止することで、このタスクの再実行等を防止することができる。従って、本実施形態によれば、タスクを実行する主体である通信端末20におけるタスクの再実行等による情報処理の負荷の増加を抑えることができる。
また、時刻情報に加えて補足情報にも基づいて時刻を特定することとすれば、更に適切に時刻が特定される。但し、必ずしも時刻の特定に補足情報を用いる必要はない。
また、本実施形態のようにタスクに応じて、現在時刻に対して未来又は過去の時刻を特定することとしてもよい。この構成によれば、適切かつ確実に時刻が特定される。但し、図2に示すようにタスクに応じて一律に未来又は過去の時刻を特定するのではなく、任意に時刻を特定することとしてもよい。
なお、本実施形態では、タスク判定装置10は、通信端末20から音声認識の結果である文章を受信して入力することとしていたが、タスク判定装置10は、通信端末20から音声を受信して、音声認識を行って文章を取得することとしてもよい。また、本実施形態では、タスク判定装置10に入力される文章は、音声認識の結果であることとしたが、音声認識の結果ではないもの(例えば、通信端末20に対するユーザの操作によって入力された文章)であってもよい。
また、本実施形態では、通信端末20にタスクを実行させることとしたが、通信端末20以外がタスクの実行主体となってもよい。例えば、上述した録画予約、録画再生及び視聴予約といったタスクであれば、動画の録画及び再生を行うことができるテレビ等の他の端末がタスクの実行主体となってもよい。また、本実施形態に係るタスク判定装置10の一部の機能が、タスクの実行主体(上述した実施形態では、通信端末20)に含まれていてもよい。その場合、タスク判定装置10とタスクの実行主体とが、本発明の一実施形態に係る機能実行指示システムを構成する。また、本実施形態に係るタスク判定装置10の全ての機能が、タスクの実行主体に含まれていてもよい。その場合、タスクの実行主体が、本発明の一実施形態に係る機能実行指示システムを構成する。また、タスク判定装置10は、音声認識装置30の機能を備えていてもよい。
なお、上記実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
機能には、判断、決定、判定、計算、算出、処理、導出、調査、探索、確認、受信、送信、出力、アクセス、解決、選択、選定、確立、比較、想定、期待、見做し、報知(broadcasting)、通知(notifying)、通信(communicating)、転送(forwarding)、構成(configuring)、再構成(reconfiguring)、割り当て(allocating、mapping)、割り振り(assigning)などがあるが、これらに限られない。たとえば、送信を機能させる機能ブロック(構成部)は、送信部(transmitting unit)又は送信機(transmitter)と呼称される。いずれも、上述したとおり、実現方法は特に限定されない。
例えば、本開示の一実施の形態におけるタスク判定装置10は、本開示の方法の処理を行うコンピュータとして機能してもよい。図4は、本開示の一実施の形態に係るタスク判定装置10のハードウェア構成の一例を示す図である。上述のタスク判定装置10は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。また、通信端末20及び音声認識装置30も、同様のハードウェア構成を取ってもよい。
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。タスク判定装置10のハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
タスク判定装置10における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサ1001が演算を行い、通信装置1004による通信を制御したり、メモリ1002及びストレージ1003におけるデータの読み出し及び書き込みの少なくとも一方を制御したりすることによって実現される。
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)によって構成されてもよい。例えば、タスク判定装置10における各機能は、プロセッサ1001によって実現されてもよい。
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュール、データなどを、ストレージ1003及び通信装置1004の少なくとも一方からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、タスク判定装置10における各機能は、メモリ1002に格納され、プロセッサ1001において動作する制御プログラムによって実現されてもよい。上述の各種処理は、1つのプロセッサ1001によって実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップによって実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つによって構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本開示の一実施の形態に係る方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD−ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu−ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つによって構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及びストレージ1003の少なくとも一方を含むデータベース、サーバその他の適切な媒体であってもよい。
通信装置1004は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
また、プロセッサ1001、メモリ1002などの各装置は、情報を通信するためのバス1007によって接続される。バス1007は、単一のバスを用いて構成されてもよいし、装置間ごとに異なるバスを用いて構成されてもよい。
また、タスク判定装置10は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つを用いて実装されてもよい。
情報の通知は、本開示において説明した態様/実施形態に限られず、他の方法を用いて行われてもよい。
本開示において説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されるものではないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本開示の記載は、例示説明を目的とするものであり、本開示に対して何ら制限的な意味を有するものではない。
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
なお、本開示において説明した用語及び本開示の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
また、本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。
上述したパラメータに使用する名称はいかなる点においても限定的な名称ではない。さらに、これらのパラメータを使用する数式等は、本開示で明示的に開示したものと異なる場合もある。
本開示で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up、search、inquiry)(例えば、テーブル、データベース又は別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断(決定)」は、「想定する(assuming)」、「期待する(expecting)」、「みなす(considering)」などで読み替えられてもよい。
「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。例えば、「接続」は「アクセス」で読み替えられてもよい。本開示で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及びプリント電気接続の少なくとも一つを用いて、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどを用いて、互いに「接続」又は「結合」されると考えることができる。
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
本開示において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
本開示において、例えば、英語でのa, an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」などの用語も、「異なる」と同様に解釈されてもよい。