(57)【要約】  本発明の一形態である情報処理装置１０は、それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段１２と、各処理機能の性能情報に基づいて、複数の処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する処理手順修正手段１１と、を備えた。
2012060098.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段と、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する処理手順修正手段と、を備えた、
情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記処理機能情報記憶手段は、前記各処理機能を予め設定された種別毎に記憶しており、
前記処理手順修正手段は、前記処理手順内の前記処理機能を、当該処理機能と同一種別の他の前記処理機能に置き換えて、前記処理手順を修正する、
情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置であって、
前記処理手順修正手段は、
前記処理手順全体に対する前記性能要件を満たすよう、前記処理手順内の処理機能単位毎に要求される性能を表す処理機能単位性能要件を推定する性能要件推定手段と、
前記処理機能単位性能要件を満たすよう、前記処理手順を当該処理手順内の処理機能単位毎に修正する処理機能単位修正手段と、を備えた、
情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記性能は、前記処理機能による処理精度を含み、
前記性能要件推定手段は、予め設定された前記処理手順内の前記各処理機能間における当該各処理機能による処理精度の誤差の伝搬状態に基づいて、前記処理手順内の処理機能単位毎における処理精度の誤差を算出して、当該処理機能単位毎における処理精度の要件である前記処理機能単位性能要件を推定する、
情報処理装置。
【請求項５】
請求項３又は４に記載の情報処理装置であって、
前記性能は、前記処理機能による処理時間を含み、
前記性能要件推定手段は、前記処理機能の種別毎に設定された前記処理機能による処理時間の幅を表す処理時間分布に基づいて、前記処理手順内の処理機能単位毎における処理時間の要件である前記処理機能単位性能要件を推定する、
情報処理装置。
【請求項６】
請求項１乃至５に記載の情報処理装置であって、
前記各処理機能が実行されたときに計測された当該各処理機能の性能を表す前記性能情報を取得して、当該取得した前記各処理機能の性能情報に基づいて、前記処理機能情報記憶手段内の性能情報を更新する性能情報更新手段を備えた、
情報処理装置。
【請求項７】
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段を備えた情報処理装置に、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する処理手順修正手段、
を実現させるためのプログラム。
【請求項８】
請求項７に記載のプログラムであって、
前記処理機能情報記憶手段に、前記各処理機能が予め設定された種別毎に記憶されており、
前記処理手順修正手段は、前記処理手順内の前記処理機能を、当該処理機能と同一種別の他の前記処理機能に置き換えて、前記処理手順を修正する、
情報処理装置。
【請求項９】
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段を備えた情報処理装置にて、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する、
情報処理方法。
【請求項１０】
請求項９に記載の情報処理方法であって、
処理機能情報記憶手段に、前記各処理機能が予め設定された種別毎に記憶されており、
前記処理手順の修正は、前記処理手順内の前記処理機能を、当該処理機能と同一種別の他の前記処理機能に置き換えて行う、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置にかかり、特に、複数の処理機能を統合して動作するシステムにて、要求に応じた処理手順を解決するための情報処理装置に関する。
【背景技術】
【０００２】
複数の解析処理などの機能を統合して動作する情報処理システムでは、複数の機能を最適なアルゴリズムで実行すべく処理手順を解決することが行われている。このような処理手順解決技術の一例として、特許文献１に記載のシステムがある。ここで、特許文献１に記載の最適アルゴリズム判定装置について、特許文献１の図８を参照して説明する。【０００３】
特許文献１の図８に示す最適アルゴリズム判定装置１００は、アルゴリズム登録部１０１と、最適パターン判定条件指定部１０２と、アルゴリズム指定部１０３と、探索パターン抽出部１０４と、探索パターン実行部１０５と、最適パターン判定部１０７と、を備えている。そして、上記構成の最適アルゴリズム判定装置１００は、次のようにしてアルゴリズムを選択する。【０００４】
まず、ユーザが、データ入力部１０６により入力データを指定し、最適パターン条件指定部１０２により、判定条件を設定する。もし、ユーザが使用アルゴリズムの指定をする場合は、ユーザが、アルゴリズム指定部１０３により、使用アルゴリズムを指定する。次に、探索パターン抽出部１０４がアルゴリズムを選択し、アルゴリズムの組合せ方のパターンである「組合せパターン」を構築する。次に、探索パターン実行部１０５が、すべての「組合せパターン」に対して、「組合せパターン」を実行し、各出力データを生成する。次に、最適パターン判定部が、最適なパターンを特定し、最適データ、最適組合せパターンなどの情報を出力する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−０６６００７
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１に記載の最適アルゴリズム判定装置では、処理精度と処理時間を推定する手段を有していない。このため、利用者からの要求に応じて処理精度と処理時間のトレードオフをとることができず、要求された処理精度と処理時間に応じた処理手順の解決が困難である、という問題が生じる。【０００７】
また、上記最適アルゴリズム判定装置では、ある時刻における最適アルゴリズムを判定するために、候補となる「組合せパターン」を生成し、実際に複数パターンを実行する必要がある。このため、解析処理の種類・数が増加すると、利用者の機能要求と非機能要求を満たす処理手順を解決するために必要な処理時間が増加する。さらに、最適アルゴリズム判定のために実際に処理を実施してしまうため、処理実行系のパフォーマンスの低下を引き起こしてしまう、という問題が生じる。【０００８】
このため、本発明の目的は、上述した課題である、要求された条件を満たす処理手順の解決が困難であることと、性能低下ということ、を解決することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の一形態である情報処理装置は、
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段と、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する処理手順修正手段と、を備えた、
という構成をとる。【００１０】
また、本発明の他の形態であるプログラムは、
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段を備えた情報処理装置に、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する処理手順修正手段、
を実現させるためのプログラムである。【００１１】
また、本発明の他の形態である情報処理方法は、
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段を備えた情報処理装置にて、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する、
という構成をとる。
【発明の効果】
【００１２】
本発明は、以上のように構成されることで、要求された性能に応じた処理手順の解決を実現でき、処理手順を実行するシステムの性能の向上を図ることができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態１における処理手順解決システムの全体構成を示す機能ブロック図である。
【図２】図１に開示した解析処理情報ＤＢに格納される解析処理機能情報テーブルのデータ構造の一例を示す図である。
【図３】図１に開示した解析処理情報ＤＢに格納される解析処理非機能情報テーブルのデータ構造の一例を示す図である。
【図４】図１に開示した解析処理情報ＤＢに格納される機能カテゴリ精度処理時間相関テーブルのデータ構造の一例を示す図である。
【図５】図１に開示した処理手順解決システムで実行される処理手順修正処理の流れを示すフローチャートである。
【図６】図１に開示した処理手順解決システムで実行されるＤＢ更新処理の流れを示すフローチャートである。
【図７】図１に開示した処理手順解決システムで実行される解析処理非機能要件推定処理の流れを示すフローチャートである。
【図８】図１に開示した処理手順解決システムにおける基本の処理手順の一例を示す図である。
【図９】図１に開示した処理手順解決システムにおいて解析処理非機能要件推定処理実行中の各解析処理に対する非機能要件の変遷の一例を示す図である。
【図１０】図１に開示した処理手順解決システムにおいて結果として得られる処理手順の一例を示す図である。
【図１１】本発明の付記１における情報処理装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
＜実施形態１＞
本発明の第１の実施形態を、図１乃至図１０を参照して説明する。図１乃至図４は、本実施形態における処理手順解決システムの構成を説明するための図であり、図５乃至図７は、動作を説明するための図である。図８乃至図１０は、処理手順解決システムの具体的な実施例を説明するための図である。
【００１５】
［構成］
本発明の第１の実施形態における処理手順解決システムの全体構成を示す機能ブロック図を、図１に示す。図１に示すように、処理手順解析システムは、解析処理実行装置２と処理手順解決装置１（情報処理装置）と、を備えて構成されている。なお、処理手順解析システムは、１台の情報処理装置にて構成されていてもよく、あるいは、複数台の情報処理装置にて構成されていてもよい。
【００１６】
上記解析処理実行装置２は、設定された処理手順に従って、実際に各処理機能を実行する装置である。そして、解析処理実行装置２は、「機能要件」である基本の処理手順と共に、当該処理手順に要求する要件である「非機能要件」を処理手順解決装置１に送信して、当該非機能要件を満たすよう基本の処理手順の修正を要求する。また、解析処理実行装置２は、処理手順解決装置１から修正された処理手順を受け取り、かかる処理手順に従って各処理機能を実際に実行する。
【００１７】
ここで、上記「処理手順」とは、それぞれ所定の処理を行う各処理機能を提供する一連の解析処理の実行順序を、並列、直列、直並列の組合せで表現したものである。そして、処理手順における解析処理は、解析処理ＩＤで指定される。また、「基本の処理手順」とは、解析処理実行装置２が実行したい処理手順が実行する解析処理とその実行順序を記述したものであり、「機能要件」に相当する。基本の処理手順においては、解析処理は、解析処理ＩＤによる処理指定、又は、機能カテゴリＩＤによるカテゴリ指定ができるものとする。
【００１８】
また、上記「非機能要件」（性能要件）とは、上述した「機能要件」である「基本の処理手順」全体に対して要求される性能の要件であり、例えば、解析精度や処理速度、メモリ消費量、ディスク消費量、演算回数などの情報である。
【００１９】
そして、上記処理手順解決装置１は、図１に示すように、処理手順修正部３と、解析処理情報ＤＢ４と、ＤＢ更新部５と、を備えている。さらに、処理手順修正部３は、処理手順解析部６と、解析処理置換部７と、非機能要件推定部８と、を備えている。なお、上記処理手順修正部３とＤＢ更新部５とは、処理手順解析装置１に装備された演算装置にプログラムが組み込まれることで実現されている。また、上記解析処理ＤＢ４は、処理手順解析装置１に装備された記憶装置に形成されている。以下、各構成について詳述する。
【００２０】
上記解析処理情報ＤＢ４（処理機能情報記憶手段）は、上述した処理手順を構成する各解析処理である各処理機能の性能、例えば、各処理機能の解析精度や解析処理時間、を表す性能情報を記憶している。具体的に、解析処理情報ＤＢ４は、解析処理機能情報テーブルＴＡと、解析処理非機能情報テーブルＴＢと、機能カテゴリ精度処理時間相関テーブルＴＣと、とを備えている。
【００２１】
上記解析処理機能情報テーブルＴＡは、図２に示すように、各処理機能を識別する「解析処理ＩＤ」と、各処理機能が属する解析処理の種別を表す「機能カテゴリＩＤ」と、が関連付けられて記憶されている。ここで、上記「解析処理ＩＤ」は、任意の文字列やＵＲＩなど、処理機能を一意に特定できる表現であれば、任意の表現を用いることができる。例えば、図２の例では、声紋認識を行う処理機能に、「声紋認識」という解析処理ＩＤが付与されている。また、「機能カテゴリＩＤ」は、任意の文字列やＵＲＩなど、処理機能のカテゴリを一意に特定できる表現であれば、任意の表現を用いることができる。例えば、図２の例では、「声紋認識」と「マイク位置＋性別判定」の解析処理ＩＤで表される両処理機能が、「話者特定」という機能カテゴリＩＤにて表されるカテゴリに属していることを示している。
【００２２】
上記解析処理非機能情報テーブルＴＢは、各処理機能毎の性能が記憶されており、具体的には、図３に示すように、各処理機能を識別する「解析処理ＩＤ」と、当該処理機能の「非機能要件の統計情報」を格納する。図３では、非機能要件として「解析処理精度」と「解析処理時間」が設定されており、それらの統計情報として「平均」、「９０Ｐｅｒｃｅｎｔｉｌｅ（データを並べた際に９０％のデータが含まれるときのデータ値）、「変動係数」（標準偏差値を算術平均値で除算したもの）、を格納した場合の例を示している。ここで、解析処理ＩＤは、上述同様に、数字に限定する必要はなく、任意の文字列やＵＲＩなど、処理手順を一意に特定できる表現であれば、任意の表現を用いることができる。
【００２３】
上記機能カテゴリ精度処理時間相関テーブルＴＣは、図４に示すように、機能カテゴリ毎に、当該機能カテゴリに属する解析処理を表す処理機能について、解析処理時間と解析処理精度との間の「相関係数」を格納している。この「相関係数」は、例えば、解析処理時間と解析精度とをそれぞれ横軸、縦軸にプロットしたグラフから求めた値である。また、機能カテゴリ精度処理時間相関テーブルＴＣには、各機能カテゴリに属する各処理機能による解析処理時間の最大値と最小値との幅を示す「処理時間分布幅」が含まれる。
【００２４】
次に、処理手順修正部３について詳述する。処理手順修正部３（処理手順修正手段）は、上述した「機能要件」である「基本の処理手順」と「非機能要件」を解析処理実行装置２から受け取り、「基本の処理手順」全体が「非機能要件」に最も近くなるように「基本の処理手順」を修正するよう機能する。
【００２５】
具体的に、処理手順修正部３を構成する処理手順解析部６は、解析処理実行装置２から受け取った「基本の処理手順」を解析し、処理全体が要求された非機能要件を満たすよう、当該処理手順に含まれる各解析処理に設定されている処理機能単位における非機能要件を算出する。なお、実際には、処理手順解析部６からの要求に応じて、非機能要件推定部８（性能要件推定部）が、各解析処理である各処理機能に対する非機能要件を推定する。なお、その推定方法については、動作説明時及び実施例にて詳述する。
【００２６】
また、上記解析処理置換部７（処理機能単位修正手段）は、基本の処理手順に含まれる各解析処理に対して、当該解析処理と同等の機能を持ち、非機能要求を満たす代替解析処理を、解析処理ＤＢ４から解析処理候補として取出し、上記基本の処理手順の解析処理を該解析処理候補で置き換える処理を行う。
【００２７】
そして、処理手順修正部３自体は、解析処理置換部７で修正された処理手順を解析処理実行装置２に返却する。これにより、解析処理実行装置２にて、修正された処理手順に従って解析処理が実行されることとなる。
【００２８】
また、上記ＤＢ更新部５（性能情報更新手段）は、解析処理実行装置２によって各解析処理が実際に処理されたときの処理精度や処理時間といった各処理機能の性能情報の履歴を受け取り、解析処理情報ＤＢ４の情報を更新する。
【００２９】
［動作］
次に、上述した処理手順解決システムの動作を、図５乃至図７のフローチャートを参照して説明する。なお、図５は、処理手順修正部３が、解析処理実行装置２からの機能要件である基本の処理手順と、非機能要件である精度・性能の目標値を受け取り、最適な処理手順を生成・返却する処理手順修正処理Ｓａを示している。また、図６は、非機能要件推定部８が、処理順修正部３の要求で、基本の処理手順に含まれる各解析処理に対して、非機能要件を推定する解析処理非機能要件推定処理Ｓｃを示している。また、図７は、ＤＢ更新部５が解析処理実行装置２から各解析処理の精度と処理時間といった性能情報を取得し、解析処理情報ＤＢ４を更新するＤＢ更新処理Ｓｂを示している。
【００３０】
まず、処理手順修正処理Ｓａについて、図５を用いて詳細に説明する。処理手順修正処理Ｓａでは、はじめに処理手順解析部６が、解析処理実行装置２からの処理手順解決要求を受ける（ステップＳａ１：Ｙｅｓ）。次に、処理手順解析部６は、解析処理実行装置２から、機能要件である基本の処理手順と、非機能要件として、処理精度・処理時間（速度）の要求を受け取る（ステップＳａ２）。なお、基本の処理手順は、図２に示した解析処理機能情報テーブルＴＡにおける解析処理ＩＤ又は機能カテゴリＩＤを用いて記述されているものとする。
【００３１】
次に、非機能要件推定部８は、基本の処理手順と、非機能要件を元に、各解析処理単位で要求される性能の非機能要件として、解析処理非機能要件（処理機能単位性能要求）を推定する（ステップＳｃ）。なお、解析処理非機能要件の推定処理については、後に図６を参照して説明する。
【００３２】
次に、解析処理置換部７は、基本の処理手順に含まれる各解析処理について、当該解析処理に対応するステップＳｃで算出した解析処理非機能要件と、当該解析処理のＩＤとを用いて、解析処理情報ＤＢ４を検索し、かかる解析処理と同じ機能を有する他の処理機能であり、上記解析処理非機能要件を満たす非機能要件つまり性能を有する解析処理を、解析処理候補として検索する（ステップＳａ５）。このとき、平均処理精度・平均処理時間が非機能要件を満たしている解析処理が、解析処理非機能情報テーブルＴＢ中に複数ある場合は、９０Ｐｅｒｃｅｎｔｉｌｅと変動係数が小さい解析処理を解析処理候補とする。
【００３３】
次に、解析処理置換部７は、上述したステップＳａ５で検索された解析処理候補で、上記基本の処理手順内の対応する解析処理を置き換える（ステップＳａ６）。そして、解析処理置換部７は、基本の処理手順に含まれる全ての解析処理に対して、上記ステップＳａ５，Ｓａ６の処理を繰り返す（ステップＳａ４）。最後に、処理手順修正部３が、修正後の処理手順を、解析処理実行装置２へ返却する（ステップＳａ７）。
【００３４】
次に、解析処理非機能要件推定処理Ｓｃについて、図６を参照して詳細に説明する。まず、非機能要件推定部８が、処理手順解析部６から受け取った基本の処理手順における「誤差の伝播関係」を特定する（ステップＳｃ１）。ここで、「誤差の伝播関係」の特定には、予め設定された誤差伝播の法則を用いて、基本の処理手順内における各解析処理間での誤差の伝播の仕方と最終結果である解析精度に対して、各解析処理がどの程度影響を与えるか、ということを算出する。
【００３５】
そして、非機能要件推定部８が、ステップＳｃ１で特定した誤差の伝播関係を用いて、処理手順解析部６から受け取った精度要求を満たすように、各解析処理毎の精度要件を推定する（ステップＳｃ２）。この推定処理においては、最終結果である解析精度に与える影響が大きい解析処理の精度要求を高くするように算出する。例えば、直列に実行される解析処理の場合は「積算」、並列に実行される解析処理の場合は「加算」と仮定して、誤差伝播による誤差推定を行う事ができる。
【００３６】
次に、非機能要件推定部８が、解析処理情報ＤＢ４内の解析処理非機能情報テーブルＴＢから、上記基本の処理手順に含まれる機能カテゴリに属する解析処理の平均処理時間を取得し、機能カテゴリ単位での平均処理時間を算出する（ステップＳｃ３）。次に、非機能要件推定部８が、ステップＳｃ３で算出した機能カテゴリ単位での最大処理時間を用いて、上記基本の処理手順における平均総処理時間を算出する（ステップＳｃ４）。
【００３７】
次に、非機能要件推定部８が、算出した平均総処理時間が上記処理手順解析部６から受け取った性能要求を満たすかどうか確認する（ステップＳｃ５）。ステップＳｃ５の確認で、性能要件を満たす場合は（ステップＳｃ５：Ｙｅｓ）、非機能要件推定部８が、推定した各解析処理の非機能要件を処理手順解析部６へ返却する（ステップＳｃ７）。ステップＳｃ５の確認で、性能要件を満たさない場合は（ステップＳｃ５：Ｎｏ）、非機能要件推定部８が、各解析処理の処理時間要求を修正する（ステップＳｃ６）。
【００３８】
具体的に、ステップＳｃ６では、非機能要件推定部８が、解析処理情報ＤＢ４中の機能カテゴリ精度処理時間相関テーブルＴＣを参照し、各機能カテゴリの処理精度と処理時間の相関係数を比較する。その上で、相関が低い処理機能カテゴリに対しては、処理時間要求を厳しくする処理を行う。更に、ステップＳｃ２で算出した精度要求が低い処理手順に対しては、処理時間要求を厳しくする。例えば、下記式（１）にて、ｎ回目の処理時間要求の修正における、処理手順ｉに対する新しい処理時間要求を算出できる（ここで、ｎ＞０）。
Ti n=Ti n-1−TwCATi×（1−CCATi）×0.5n-1  ・・・（１）
【００３９】
ここで、「Ti n」は、ｎ回目の修正における処理手順ｉに対する処理時間要求値、「TwCATi」は、処理手順ｉの機能カテゴリにおける処理時分布幅、「CCATi」は、処理手順ｉの機能カテゴリにおける相関係数である。
【００４０】
次に、非機能要件推定部８が、ステップＳｃ６で修正した平均総処理時間が処理手順解析部６から受け取った性能要求を満たすかどうか確認し、要件を満たすまで処理を繰り返す（ステップＳｃ５）。
【００４１】
次に、ＤＢ更新処理Ｓｂについて、図７を参照して詳細に説明する。図７は、処理手順解決システムで実行されるＤＢ更新処理Ｓｂの流れを示すフローチャートである。
【００４２】
ＤＢ更新処理Ｓｂでは、まず、ＤＢ更新部５が、解析処理実行装置２から、各解析処理を行った実行時刻、解析処理ＩＤ、処理時間、精度情報を含む解析処理実行履歴を取得する（ステップＳｂ１）。次に、ＤＢ更新部５は、解析処理実行履歴を元に、各解析処理について、平均処理時間を算出する（ステップＳｂ２）。次に、ＤＢ更新手段５は、ステップＳｂ２で算出した各解析処理の平均処理時間と、解析処理情報ＤＢ４内の該当する解析処理の平均処理時間とを加重平均し、解析処理情報ＤＢ４の平均処理時間情報を更新する（ステップＳｂ３）。
【００４３】
次に、ＤＢ更新部５は、解析処理実行履歴を元に、各解析処理について、解析処理精度の平均値を算出する（ステップＳｂ４）。次に、ＤＢ更新部５は、ステップＳｂ４で算出した各解析処理の精度の平均値と、解析処理情報ＤＢ４内の該当する解析処理の精度の平均値とを加重平均し、解析処理情報ＤＢ４の精度の平均値情報を更新する（ステップＳｂ５）。
【００４４】
次に、ＤＢ更新部５は、解析処理情報ＤＢ４から各機能カテゴリについて、当該機能カテゴリに属する解析処理間での精度と処理時間の間の相関係数を算出する（ステップＳｂ６）。次に、ＤＢ更新部５は、ステップＳｂ６で算出した各機能カテゴリの相関係数値と、解析処理情報ＤＢ４内の各機能カテゴリの相関係数値とを加重平均し、解析処理情報ＤＢ４の各機能カテゴリの相関係数値を更新する（ステップＳｂ７）。ここで、平均処理時間の算出更新（Ｓｂ２、Ｓｂ３）と、精度の算出更新（Ｓｂ４、Ｓｂ５）は、実行順序の変更や並列実行を行ってもよい。
【００４５】
［実施例］
ここで、上述した処理手順解決システムの具体的な動作の一例を、図８乃至１０を参照して説明する。ここでは、解析処理実行装置２から処理手順修正部３へ入力された「基本の処理手順」が、図８に示すよう、「音声ノイズ除去」、「話者特定」といった処理機能が直列に連続した処理手順であることとする。また、この基本の処理手順に対して要求されている「非機能要件」が下記の通りである場合の動作例を説明する。なお、下記の例では、基本の処理手順は、機能カテゴリＩＤを用いて記載した場合を示している。
【００４６】
非機能要件例
１）精度要件：0.65以上
２）処理時間要件：130[msec]以内
【００４７】
そして、処理手順修正部３は、次のように動作する。まず、非機能要件推定部８が、基本の処理手順から、誤差伝播関係を特定する。このとき、基本の処理手順が、各処理機能が直列に実行される解析処理である場合には、各処理機能の誤差を「積算」、並列に実行される解析処理である場合には、各処理機能の誤差を「加算」、と予め設定された法則から仮定して、誤差伝播による誤差推定を行う。図８に示すように、今回の基本の処理手順は、直列に２つの処理が連続しているため、解析結果値の式は下記式（２）として表現する。
［最終結果］＝Ｒ音声のイズ除去×Ｒ話者特定  ・・・（２）
【００４８】
そして、上記積除算に対する誤差伝播は、「相対誤差の和」、加減算に対する誤差伝播は、「絶対誤差の和」となることから、誤差の伝播関係は下記数（３）として表現する。
［最終誤差］＝相対誤差音声のイズ除去＋相対誤差話者特定  ・・・（３）
【００４９】
次に、各解析処理の精度要件を推定する。まず、上述した誤差の伝播関係と、精度要件から、下記の式（４）が成り立つ。
0.65≧1−（相対誤差要件音声ノイズ除去＋相対誤差要件話者特定）  ・・・（４）
【００５０】
更に、前段処理の精度要求を厳しくするために、下記の式（５）を導入する。
相対誤差要件音声ノイズ除去＜相対誤差要件話者特定×ξ  ・・・（５）
ここで、ξは、システムごとに定める定数であり、例えば、１．５を使用する。
【００５１】
そして、上記２式（４），（５）を解くと、相対誤差要件が算出される。なお、上述した値とは関係なく、下記のように相対誤差要件が算出された場合を考える。
相対誤差要件音声のイズ除去＝１．２
相対誤差要件話者特定×ξ＝２．２
【００５２】
以上より、各解析処理の精度要件は、図９の修正回数０回目の行に示すように、音声ノイズ除去の精度＝８８％、話者特定の精度＝７８％と算出できる。
【００５３】
次に、各解析処理の機能カテゴリ単位での最大処理時間を検索する。解析処理機能情報テーブルＴＡと解析処理非機能情報テーブルＴＢの情報から、図８の基本の処理手順に含まれる解析処理の機能カテゴリごとに、最大処理時間を検索する。この例では、まず機能カテゴリが話者特定に対しては、声紋認識の平均処理時間200[msec]、音声ノイズ除去に対しては、適応フィルタノイズ除去の20[msec]となる。結果、この段階での各処理手順に対する処理時間要件の推定値は、図９の修正回数0回目の行の様になる。
【００５４】
次に、処理手順全体での平均総処理時間を算出し、性能要件を満たすか確認する。この場合、直列実行であるから、総処理時間は、220[msec]であり、要件130[msec]を満たしていない。
【００５５】
ところが、上述したように算出した総処理時間は、非機能要件を満たさないため、各解析処理の処理時間要件の修正を繰り返し実施する。この場合には、上述した式（１）の計算により、修正１回目の処理時間要件を求める。
【００５６】
Ｔ音声ノイズ除去 1=Ｔ音声ノイズ除去 0−Ｔｗ音声ノイズ除去×（１−Ｃ音声ノイズ除去）×０．５０
＝２０−３×（１−０．８）×１＝１９．６[msec]
Ｔ話者特定 1＝Ｔ話者特定 0−Ｔｗ話者特定×（１−Ｃ話者特定）×０．５０
＝２００−１５０×（１−０．６）×１＝１４０[msec]
上述した修正１回目の平均総処理時間は、図９の修正回数１回目の行に示すように、「１５９．６」となり、未だ非機能要件である１３０[msec]の要件を満たしていないため、第２回目の修正を行う。
【００５７】
そして、２回目の修正も上述同様に実施し、結果は、図９の修正回数２回目の行の様になる。この時点で、要求された非機能要件を満たすようになるため、推定された性能要件を解析処理置換部７へ渡す。
【００５８】
解析処理置換部７は、受け取った基本の処理手順と、解析処理非機能要件情報を基に、最適な解析処理を選択する。ここでは、図８に示した基本処理手順について、音声ノイズ除去に対しては、精度要件、処理時間要件を共に満たす「ルールベースノイズ除去」が選択される。話者特定に対しては、「マイク位置＋性別判定」が選択される。
【００５９】
選択した解析処理で、基本の処理手順中の解析処理を置換する。置換後の処理手順は、図１０に示すように、ルールベースノイズ除去（ステップＳ２０１）、マイク位置＋性別判定（ステップＳ２０２）となる。最後に、処理手順修正部３は、上記処理手順を結果として返却する。
【００６０】
以上のように、本発明によると、非機能要件推定部８が、処理手順内の各解析処理単位で非機能要件を推定し、その推定値に従って、解析処理置換部７が、解析処理情報ＤＢ４内の情報を用いて最適な解析処理を選択している。従って、利用者の要求する処理精度と処理時間に応じた処理手順を容易に解決することが可能となる。
【００６１】
また、処理手順修正部３は、基本となる処理手順の実行順序には手を加えず、解析処理置換部７が、解析処理情報ＤＢ４内の情報を用いて最適な解析処理を選択している。このため、解析処理の選択にかかる処理コストは、基本となる処理手順に含まれる機能カテゴリに属する解析処理数により決定されることになり、これは、解析処理数の組合せ数で処理コストが増えていたこれまでの手法に比べて計算負荷の低減を実現できる。以上より、本発明では、システムのパフォーマンス低下を最小限に抑えることが出来ることである。
【００６２】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報処理装置の構成の概略を、図１１を参照して説明する。但し、本発明は、以下の構成に限定されない。
【００６３】
（付記１）
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段１２と、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する処理手順修正手段１１と、を備えた、
情報処理装置１０。
【００６４】
（付記２）
付記１に記載の情報処理装置であって、
前記処理機能情報記憶手段は、前記各処理機能を予め設定された種別毎に記憶しており、
前記処理手順修正手段は、前記処理手順内の前記処理機能を、当該処理機能と同一種別の他の前記処理機能に置き換えて、前記処理手順を修正する、
情報処理装置。
【００６５】
（付記３）
付記１又は２に記載の情報処理装置であって、
前記処理手順修正手段は、
前記処理手順全体に対する前記性能要件を満たすよう、前記処理手順内の処理機能単位毎に要求される性能を表す処理機能単位性能要件を推定する性能要件推定手段と、
前記処理機能単位性能要件を満たすよう、前記処理手順を当該処理手順内の処理機能単位毎に修正する処理機能単位修正手段と、を備えた、
情報処理装置。
【００６６】
（付記４）
付記３に記載の情報処理装置であって、
前記性能は、前記処理機能による処理精度を含み、
前記性能要件推定手段は、予め設定された前記処理手順内の前記各処理機能間における当該各処理機能による処理精度の誤差の伝搬状態に基づいて、前記処理手順内の処理機能単位毎における処理精度の誤差を算出して、当該処理機能単位毎における処理精度の要件である前記処理機能単位性能要件を推定する、
情報処理装置。
【００６７】
（付記５）
付記３又は４に記載の情報処理装置であって、
前記性能は、前記処理機能による処理時間を含み、
前記性能要件推定手段は、前記処理機能の種別毎に設定された前記処理機能による処理時間の幅を表す処理時間分布に基づいて、前記処理手順内の処理機能単位毎における処理時間の要件である前記処理機能単位性能要件を推定する、
情報処理装置。
【００６８】
（付記６）
付記１乃至５に記載の情報処理装置であって、
前記各処理機能が実行されたときに計測された当該各処理機能の性能を表す前記性能情報を取得して、当該取得した前記各処理機能の性能情報に基づいて、前記処理機能情報記憶手段内の性能情報を更新する性能情報更新手段を備えた、
情報処理装置。
【００６９】
（付記７）
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段を備えた情報処理装置に、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する処理手順修正手段、
を実現させるためのプログラム。
【００７０】
（付記８）
付記７に記載のプログラムであって、
前記処理機能情報記憶手段に、前記各処理機能が予め設定された種別毎に記憶されており、
前記処理手順修正手段は、前記処理手順内の前記処理機能を、当該処理機能と同一種別の他の前記処理機能に置き換えて、前記処理手順を修正する、
情報処理装置。
【００７１】
（付記９）
付記１又は２に記載の情報処理装置であって、
前記処理手順修正手段は、
前記処理手順全体に対する前記性能要件を満たすよう、前記処理手順内の処理機能単位毎に要求される性能を表す処理機能単位性能要件を推定する性能要件推定手段と、
前記処理機能単位性能要件を満たすよう、前記処理手順を当該処理手順内の処理機能単位毎に修正する処理機能単位修正手段と、を有する、
プログラム。
【００７２】
（付記１０）
それぞれ所定の処理を行う各処理機能の性能を表す性能情報を記憶した処理機能情報記憶手段を備えた情報処理装置にて、
前記各処理機能の前記性能情報に基づいて、複数の前記処理機能からなる処理手順を、当該処理手順全体に対して要求される性能を表す性能要件を満たすよう修正する、
情報処理方法。
【００７３】
（付記１１）
付記１０に記載の情報処理方法であって、
処理機能情報記憶手段に、前記各処理機能が予め設定された種別毎に記憶されており、
前記処理手順の修正は、前記処理手順内の前記処理機能を、当該処理機能と同一種別の他の前記処理機能に置き換えて行う、
情報処理方法。
【００７４】
（付記１２）
付記１０又は１１に記載の情報処理方法であって、
前記処理手順の修正は、
前記処理手順全体に対する前記性能要件を満たすよう、前記処理手順内の処理機能単位毎に要求される性能を表す処理機能単位性能要件を推定し、
前記処理機能単位性能要件を満たすよう、前記処理手順を当該処理手順内の処理機能単位毎に修正して行う、
情報処理方法。
【００７５】
なお、本発明は、日本国にて２０１０年１１月５日に特許出願された特願２０１０−２４８２０７の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【符号の説明】
【００７６】
１  処理手順解決装置
２  解析処理実行装置
３  処理手順修正部
４  解析処理情報ＤＢ
５  ＤＢ更新部
６  処理手順解析部
７  解析処理置換部
８  非機能要件推定部
１０  情報処理装置
１１  処理手順修正手段
１２  処理機能情報記憶手段
【図１】
2012060098.tif 000003
【図２】
2012060098.tif 000004
【図３】
2012060098.tif 000005
【図４】
2012060098.tif 000006
【図５】
2012060098.tif 000007
【図６】
2012060098.tif 000008
【図７】
2012060098.tif 000009
【図８】
2012060098.tif 000010
【図９】
2012060098.tif 000011
【図１０】
2012060098.tif 000012
【図１１】
2012060098.tif 000013
【国際調査報告】
2012060098.tif 000014
2012060098.tif 000015
2012060098.tif 000016
2012060098.tif 000017