IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧 ▶ 東芝メモリ株式会社の特許一覧

特許7455769情報処理装置、情報処理方法、プログラム、および情報処理システム
<>
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図1
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図2
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図3
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図4
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図5
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図6
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図7
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図8
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図9
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図10
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図11
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図12
  • 特許-情報処理装置、情報処理方法、プログラム、および情報処理システム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-15
(45)【発行日】2024-03-26
(54)【発明の名称】情報処理装置、情報処理方法、プログラム、および情報処理システム
(51)【国際特許分類】
   G06N 99/00 20190101AFI20240318BHJP
   G06N 7/00 20230101ALI20240318BHJP
   G06N 20/00 20190101ALI20240318BHJP
【FI】
G06N99/00 180
G06N7/00
G06N20/00
【請求項の数】 15
(21)【出願番号】P 2021015257
(22)【出願日】2021-02-02
(65)【公開番号】P2022118610
(43)【公開日】2022-08-15
【審査請求日】2023-04-03
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】100091487
【弁理士】
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100118876
【弁理士】
【氏名又は名称】鈴木 順生
(74)【代理人】
【識別番号】100206243
【弁理士】
【氏名又は名称】片桐 貴士
(72)【発明者】
【氏名】冨田 将嗣
(72)【発明者】
【氏名】桐淵 大貴
(72)【発明者】
【氏名】横田 怜
(72)【発明者】
【氏名】小池 聡
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2020-181318(JP,A)
【文献】特開2011-113377(JP,A)
【文献】特開2019-159933(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 99/00
G06N 7/00
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
第1入力パラメータを用いる第1処理と、第2入力パラメータを用いる第2処理と、を少なくとも含む一連処理の出力パラメータに対する評価値を算出する評価値算出部と、
前記評価値に基づき、複数の前記出力パラメータから少なくとも一部を選出する選出部と、
選出された前記出力パラメータに対応する第1入力パラメータおよび第2入力パラメータに基づき、前記第1入力パラメータおよび前記第2入力パラメータを再生成するパラメータ生成部と、
を備え、
前記パラメータ生成部は、前記一連処理の1回分の前記第1入力パラメータおよび前記第2入力パラメータを生成し、
前記第1処理および前記第2処理の処理時間の短いほうの処理のために生成された入力パラメータの数が、前記第1処理および前記第2処理の処理時間の長いほうの処理のために生成された入力パラメータの数よりも多い、
情報処理装置。
【請求項2】
前記パラメータ生成部は、前記第1処理の1回あたりの実行時間と、前記第2処理の1回あたりの実行時間と、に基づき、再生成される前記第2入力パラメータの数を決定する、
請求項1に記載の情報処理装置。
【請求項3】
前記第1処理の1回あたりの実行時間に対する前記第2処理の1回あたりの実行時間の比を、再生成される前記第2入力パラメータの数とする、
請求項2に記載の情報処理装置。
【請求項4】
前記第2処理が、前記第1処理の出力パラメータをさらに用い、
前記パラメータ生成部は、前記一連処理の1回分の前記第1入力パラメータを複数生成する場合に、前記第1入力パラメータごとに対応する前記第2入力パラメータを生成する、
請求項1ないし3のいずれか一項に記載の情報処理装置。
【請求項5】
所定の条件に基づいて前記第1入力パラメータおよび前記第2入力パラメータの再生成の実行是非を判定し、前記再生成を実行しないと判定された場合に、前記第1入力パラメータおよび前記第2入力パラメータの少なくともいずれかの推奨値を決定する判定部
をさらに備える請求項1ないし4のいずれか一項に記載の情報処理装置。
【請求項6】
前記第1入力パラメータおよび前記第2入力パラメータの少なくともいずれかの推奨値を出力する出力部
をさらに備える請求項1ないし5のいずれか一項に記載の情報処理装置。
【請求項7】
前記パラメータ生成部は、前記第1入力パラメータまたは前記第2入力パラメータの値が所定範囲内に含まれるように、前記第1入力パラメータおよび前記第2入力パラメータを再生成する、
請求項1ないし6のいずれか一項に記載の情報処理装置。
【請求項8】
前記評価値算出部は、前記一連処理の前記出力パラメータに含まれる2以上の要素に対して前記評価値を算出し、
前記選出部は、所定の前記要素に対応する前記評価値に基づき、選出する出力パラメータを決定する、
請求項1ないし7のいずれか一項に記載の情報処理装置。
【請求項9】
前記評価値算出部は、所定の評価関数に基づいて前記評価値を算出する、
請求項1ないし8のいずれか一項に記載の情報処理装置。
【請求項10】
前記パラメータ生成部は、
少なくとも、前記第1入力パラメータと、前記評価値と、に基づき、少なくとも、前記第1入力パラメータと、前記評価値と、の関係を表す関係式のパラメータを更新し、
更新された前記パラメータを含む前記関係式に基づき、少なくとも前記第1入力パラメータを再生成する、
請求項1ないし9のいずれか一項に記載の情報処理装置。
【請求項11】
前記評価値算出部、前記選出部、または前記パラメータ生成部の処理に用いられる所定事項の変更に関する情報を受け付ける入力部をさらに備え、
前記評価値算出部、前記選出部、または前記パラメータ生成部の処理が、前記入力部を介して受け付けた情報に基づいて変更された所定事項を用いて実行される、
請求項1ないし10のいずれか一項に記載の情報処理装置。
【請求項12】
前記第2入力パラメータはランダムに生成される、
請求項1ないし11のいずれか一項に記載の情報処理装置。
【請求項13】
第1入力パラメータを用いる第1処理と、第2入力パラメータを用いる第2処理と、を少なくとも含む一連処理の出力パラメータに対する評価値を算出するステップと、
前記評価値に基づき、複数の前記出力パラメータから少なくとも一部を選出するステップと、
選出された前記出力パラメータに対応する第1入力パラメータおよび第2入力パラメータに基づき、前記第1入力パラメータおよび前記第2入力パラメータを再生成するステップと、
を備え、
前記第1入力パラメータおよび前記第2入力パラメータを再生成するステップにおいて、前記一連処理の1回分の前記第1入力パラメータおよび前記第2入力パラメータが生成され、
前記第1処理および前記第2処理の処理時間の短いほうの処理のために生成された入力パラメータの数が、前記第1処理および前記第2処理の処理時間の長いほうの処理のために生成された入力パラメータの数よりも多い、
情報処理方法。
【請求項14】
第1入力パラメータを用いる第1処理と、第2入力パラメータを用いる第2処理と、を少なくとも含む一連処理の出力パラメータに対する評価値を算出するステップと、
前記評価値に基づき、複数の前記出力パラメータから少なくとも一部を選出するステップと、
選出された前記出力パラメータに対応する第1入力パラメータおよび第2入力パラメータに基づき、前記第1入力パラメータおよび前記第2入力パラメータを再生成するステップと、
を備え、
前記第1入力パラメータおよび前記第2入力パラメータを再生成するステップにおいて、前記一連処理の1回分の前記第1入力パラメータおよび前記第2入力パラメータが生成され、
前記第1処理および前記第2処理の処理時間の短いほうの処理のために生成された入力パラメータの数が、前記第1処理および前記第2処理の処理時間の長いほうの処理のために生成された入力パラメータの数よりも多い、
コンピュータによって実行されるプログラム。
【請求項15】
第1入力パラメータを用いる第1処理と、第2入力パラメータを用いる第2処理と、を少なくとも含む一連処理に含まれる各処理を実行する1以上の処理実行装置と、
前記第1入力パラメータおよび第2入力パラメータを生成する情報処理装置と、
を備え、
前記情報処理装置は、
前記一連処理の出力パラメータに対する評価値を算出する評価値算出部と、
前記評価値に基づき、複数の前記出力パラメータから少なくとも一部を選出する選出部と、
選出された前記出力パラメータに対応する第1入力パラメータおよび第2入力パラメータに基づき、前記第1入力パラメータおよび前記第2入力パラメータを再生成するパラメータ生成部と、
を備え、
前記パラメータ生成部は、前記一連処理の1回分の前記第1入力パラメータおよび前記第2入力パラメータを生成し、
前記第1処理および前記第2処理の処理時間の短いほうの処理のために生成された入力パラメータの数が、前記第1処理および前記第2処理の処理時間の長いほうの処理のために生成された入力パラメータの数よりも多く、 前記1以上の処理実行装置は、前記一連処理を1回実行する際に、前記一連処理の1回分の前記第1入力パラメータごとに前記第1処理を実行し、前記一連処理の1回分の前記第2入力パラメータごとに前記第2処理を実行し、
前記一連処理の1回分とされた前記第2入力パラメータごとに前記出力パラメータが生成される、
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、情報処理方法、プログラム、および情報処理システムに関する。
【背景技術】
【0002】
目的関数を最大または最小とするような好ましい入力パラメータを効率的に探索するための手法として、ベイズ最適化手法が知られている。ベイズ最適化手法では、シミュレーションなどの結果に基づいて獲得関数を作成し、現時点の獲得関数が最大となる入力パラメータを、次の入力パラメータとして決定する。時間を要するシミュレーションにベイズ最適化手法を用いることにより、技術者知見を必須としないため効率的に入力パラメータを探索する時間を削減できることが知られている。
【0003】
しかし、ベイズ最適化を用いても、当該時間を短縮しにくい場合もあり得る。例えば、複数のサブシミュレーションを順番に実行する一連のシミュレーションの各サブシミュレーションに用いられる入力パラメータを探索する場合がある。この場合、一連のシミュレーションに対してベイズ最適化を行うと、計算時間を多大に要すため探索時間をあまり短縮できない。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2018-73360号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の一実施形態は、所要時間の異なる複数の処理を含む一連処理に対する入力パラメータを探索する場合に、一連処理の総所要時間を抑えつつ探索結果の精度の低下を抑える装置などを提供する。
【課題を解決するための手段】
【0006】
本発明の一実施形態である装置は、算出部と生成部を備える。算出部は、第1入力パラメータを用いる第1処理と、第2入力パラメータを用いる第2処理と、を含む一連処理の出力パラメータに対する評価値を算出する。生成部は、選出された出力パラメータに対応する第1および第2入力パラメータに基づき、一連処理の1回分の第1および第2入力パラメータを再生成する。また、第1および第2処理の処理時間の短いほうの処理のために生成された入力パラメータの数が、第1および第2処理の処理時間の長いほうの処理のために生成された入力パラメータの数よりも多い。
【図面の簡単な説明】
【0007】
図1】本発明の一実施形態に係わる情報処理システムを示すブロック図。
図2】従来手法のシミュレーションの流れを示す図。
図3】本実施形態のシミュレーションの流れを示す図(1試行あたりの図)。
図4】1番目の第1入力パラメータX1の一例を示す図。
図5】パラメータUの一例を示す図。
図6】パラメータZの一例を示す図。
図7】パラメータYの一例を示す図。
図8】算出される評価値の一例を示す図。
図9】選出について説明する図。
図10】記憶部に記憶される選出されたパラメータに関するデータの一例を示す図。
図11】出力の一例を示す図。
図12】情報処理システムの一連処理の概略フローチャート。
図13】本発明の一実施形態におけるハードウェア構成の一例を示すブロック図。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら、本発明の実施形態について説明する。
【0009】
(本発明の一実施形態)
図1は、本発明の一実施形態に係るパラメータ提供装置(情報処理装置)を含む情報処理システムを示すブロック図である。本実施形態に関する情報処理システム1は、パラメータ提供装置(情報処理装置)11と、第1処理装置12Aと、第2処理装置12Bと、管理装置13と、を備える。パラメータ提供装置11は、パラメータ生成部111と、評価値算出部112と、選出部113と、記憶部114と、判定部115と、入出力部116と、を備える。
【0010】
なお、本実施形態の構成は、一例であり、その他の装置および構成要素が存在していてもよい。また、各装置および構成要素は細分化されてもよいし、集約されてもよい。情報処理システムにおいて、各処理を複数の装置に分担させることは、処理負荷の分散、可用性の維持などのためによくあることである。例えば、パラメータ生成部111は、第1処理装置12Aと、第2処理装置12Bと、によって用いられるパラメータを生成するが、第1処理装置12Aに用いられるパラメータを生成する第1パラメータ生成部と、第2処理装置12Bに用いられるパラメータを生成する第2パラメータ生成部と、に分かれていてもよい。また、入出力部116が入力部と出力部とに分かれていてもよい。また、情報処理装置が、パラメータ生成部111を含む装置と、その他の構成要素を含む装置と、に分かれていてもよい。また、第1処理装置12Aと、第2処理装置12Bと、が別れておらず、一つの装置であってもよい。
【0011】
本実施形態の情報処理システム1は、シミュレーションなどの処理に必要とされる入力パラメータの好ましい値を探索する。例えば、入力パラメータに基づくシミュレーションを実行し、実行結果である出力パラメータを評価し、当該評価が高くなるような入力パラメータの値を再決定する。なお、最終的に最も評価の高い入力パラメータの値を最適値として選出してもよい。なお、最適として選出された値よりも適切な値が実在してもよい。また、以降の説明において、パラメータの決定や生成は、シミュレーションなどに用いられるパラメータの種類を決めることではなく、パラメータの値を決めることを意味する。
【0012】
なお、入力パラメータが提供される処理は、入力パラメータを受け取って出力パラメータを返すものであればよく、例えば、ある条件で実行されると、当該条件に対応する結果を出力するといった実験でもよい。なお、化学実験でも物理実験でもよい。
【0013】
なお、入力パラメータおよび出力パラメータの数は特に限られるものではない。そのため、以降においては、入力パラメータおよび出力パラメータを1以上の要素を含むベクトルとして扱う。また、入力パラメータおよび出力パラメータが示す内容は、特に限られるものではない。例えば、一連処理が実験の場合に、実験の際の条件の値を入力パラメータの値にしてもよい。また、出力パラメータの値は、実験に用いられた各種センサによる測定値でもよいし、実験結果から出力された物理的な特性値や測定値でもよい。各パラメータの各要素の値は、例えば、連続値、離散値、またはカテゴリ変数でもよい。
【0014】
また、情報処理システム1において実行されるシミュレーションなどは、少なくとも二つのシミュレーションなどによって一つの全体的なシミュレーションなどが構成されているとする。そのため、以降においては、シミュレーション全体、実験全体などを「一連処理」と記載し、一連処理を構成する部分的なシミュレーション、部分的な実験などといった処理を「サブ処理」と記載する。なお、サブ処理の中に、さらに複数の部分的な処理が含まれていてもよい。
【0015】
本実施形態では、第1サブ処理と、第2サブ処理と、が一連処理に含まれ、パラメータ提供装置11は、第1サブ処理と、第2サブ処理と、に対し、入力パラメータを提供する。第1サブ処理は、第1サブ処理用の入力パラメータに基づいて実行され、出力パラメータを出力する。第2サブ処理は、第2サブ処理用の入力パラメータと、第1サブ処理の出力パラメータと、に基づいて実行される。そのため、第2サブ処理は、第1サブ処理の出力パラメータに依存する。
【0016】
また、サブ処理は、実行に要する時間が異なるものとする。本実施形態では、各サブ処理と比較して所要時間が比較的長いサブ処理に対しては、一連処理1回につき行う実行回数を少なくし、各サブ処理と比較して所要時間が比較的短いサブ処理に対しては一連処理1回につき行う実行回数を多くする。これにより、情報処理システムによって実行される一連処理の総実行時間を短縮する。
【0017】
なお、実行回数を少なくするサブ処理を少実行サブ処理とも記載する。実行回数を多くするサブ処理を多実行サブ処理とも記載する。本実施形態では、第1サブ処理が少実行サブ処理であり、第2サブ処理が多実行サブ処理であるとする。
【0018】
図2図3は、従来手法と本実施形態での一連処理の流れの違いを説明する図である。図2は、従来手法の一連処理の流れを示す図である。図2に示されたアルファベットXは、パラメータ提供装置11によって生成された、第1サブ処理に対する入力パラメータである。パラメータXは、第1入力パラメータとも記載される。図2のアルファベットUは、第1サブ処理の出力パラメータであり、第2サブ処理に対する入力パラメータでもある。パラメータUは、第1出力パラメータとも記載される。図2のアルファベットZは、パラメータ提供装置11によって生成された、第2サブ処理に対する入力パラメータである。パラメータZは、第2入力パラメータとも記載される。図2のアルファベットYは、第2サブ処理の出力パラメータである。パラメータYは、第2出力パラメータとも記載される。なお、図2および図3の例では、第1入力パラメータXおよびZが一連処理の入力パラメータとも言え、第2出力パラメータYが一連処理の出力パラメータとも言える。
【0019】
また、図2の各パラメータには数字の1が付与されているが、これは1番目のパラメータであることを示しており、p(pは1以上の整数)番目のパラメータは、例えば、Xp、Upなどと記載する。第1サブ処理に対する1番目の第1入力パラメータX1がパラメータ提供装置11から第1処理装置12Aに送信されており、第1処理装置12Aは入力パラメータX1に基づいて第1サブ処理を行う。入力パラメータX1に基づく第1サブ処理によって、第1処理装置12AからパラメータU1が出力される。また、第2処理装置12Bに対する1回目の入力パラメータZ1がパラメータ提供装置11から第2処理装置12Bに送信されており、第2処理装置12Bは、パラメータZ1およびU1に基づいて第2サブ処理を行う。パラメータZ1およびパラメータUに基づく第2サブ処理によって、第2処理装置12Bから出力パラメータY1が出力される。出力パラメータY1は、パラメータ提供装置11に送信され、パラメータ提供装置11が出力パラメータY1に基づいて2回目の入力パラメータX2およびZ2を決定する。このように、一連処理が1回行われる度に入力パラメータを変更する。これを繰り返して、入力パラメータの好ましい値を探索する。
【0020】
探索結果の精度をある程度担保するためには、一連処理の実行回数が、ある程度求められる。例えば、一連処理の実行回数は100回と決定され得る。また、例えば、第1処理装置12Aによる第1サブ処理の実行時間は100秒であり、第2処理装置12Bによる第2サブ処理の実行時間は1秒であるとする。この場合において、一連処理の総所要時間は、一連処理1回あたり101秒(第1サブ処理の100秒+第2サブ処理の1秒)かかるため、10100秒(1回につき101秒×100回)となる。
【0021】
一方、本実施形態では、一連処理の実行回数を削減する。前述の従来例の場合においては、一連処理の実行回数を100回としたが、本実施形態では、一連処理の実行回数を減らし、例えば10回とする。10回の実行回数では探索の精度が低くなるが、探索の精度をなるべく維持するために、一連処理において、短時間で終了する第2サブ処理を複数回実行する。例えば、一連処理1回につき、第2サブ処理を100回行うとする。この場合、1回の一連処理において、第1サブ処理の実行時間100秒と、第2サブ処理の総実行時間100秒(1秒×100回)と、の合計200秒かかることになる。1回の一連処理の所要時間は長くなるが、実行回数が10回に減少しているため、一連処理の総所要時間は、2000秒(200×10)となり、従来手法よりも削減される。
【0022】
図3は、本実施形態の一連処理の流れを示す図である。第1処理装置12Aによる第1サブ処理は図2と同じである。一方、パラメータ提供装置11は、第2サブ処理に対する1回目の入力パラメータとして、Z1からZ100まで(図3では{Z1,Z2,Z3,・・・,Z100}と表されている)の100個のパラメータを第2処理装置12Bに送信している。第2処理装置12Bは、Z1からZ100までの100個のパラメータごとに第2サブ処理を実行する。すなわち、第2処理装置12Bは、パラメータU1およびZ1に基づいて第2サブ処理を実行し、その次に、パラメータU1およびZ2に基づいて第2サブ処理を実行し、その次に、パラメータU1およびZ3に基づいて第2サブ処理を実行していくことになる。こうして、Z1からZ100までの100個分の第2サブ処理が実行される。そして、各第2サブ処理の出力パラメータY1からY100がパラメータ提供装置11に送信される。なお、図3では、パラメータYp(pは1以上の整数)の後ろの括弧内に、パラメータYpの生成に用いられたパラメータUおよびZを示している。例えば、Y2(U1,Z2)は、パラメータU1およびZ2に基づいてパラメータY2が生成されたことを示す。
【0023】
パラメータ提供装置11は、出力パラメータY1からY100に基づいて、2回目の一連処理に用いる、入力パラメータU2と、入力パラメータZ101からZ200と、を決定する。このように、1回の一連処理につき、各サブ処理を1回ずつ行うのではなく、少なくとも短時間のサブ処理を複数回実行させる。これにより、シミュレーション実行回数を減らしても、探索の能力低下をなるべく抑える。そのため、一連処理の1回分の第1入力パラメータおよび第2入力パラメータの数は、第1サブ処理および第2サブ処理の実行時間の短いほうを多くする。
【0024】
なお、説明の便宜上、図3の例では、第1パラメータXは一つ生成されているが、パラメータ提供装置11は、一度に、複数の第1パラメータXを生成してもよい。例えば、パラメータ提供装置11は、パラメータX1、X2およびX3を生成して第1処理装置12Aに送信してもよい。その場合、第1処理装置12Aは、パラメータX1、X2およびX3それぞれごとに第1サブ処理を実行して、第1出力パラメータU1、U2およびU3を出力する。そして、第2処理装置12Bは、第1出力パラメータU1、U2およびU3それぞれごとに、第2サブ処理を実行する。なお、パラメータ提供装置11は、第1出力パラメータU1、U2およびU3それぞれごとに、第2入力パラメータZを生成してもよい。前回のように1回のシミュレーションで第2入力パラメータZを100個生成する場合は、第1出力パラメータU1のための第2入力パラメータZ1からZ100を生成し、第1出力パラメータU2のための第2入力パラメータZ101からZ200を生成し、第1出力パラメータU3のための第2入力パラメータZ201からZ300を生成してもよい。あるいは、第2入力パラメータZ1からZ100が、第1出力パラメータU1、U2およびU3それぞれと組み合わせされてもよい。なお、前述の通り、一連処理1回あたりの第1入力パラメータの数は、一連処理1回あたりの第2入力パラメータの数よりも少なくする。
【0025】
このような組み合わせ方は、予め指定されて記憶部114に記憶されていればよい。また、管理装置13から、組み合わせ方についての情報を受信した場合に、記憶部114の情報を更新してもよい。
【0026】
なお、前述の通り、パラメータX、U、Z、およびYは、1以上の要素を含む。図4は、1番目の第1入力パラメータX1の一例を示す図である。図4にはパラメータXの要素ごとの値が示されている。パラメータX1のk番目の要素はx1_kと表されており、小文字のアルファベットと、下付きの番号と、を用いて表している。図4の例では、入力パラメータX1はx1_1、x1_2、…、x1_50の50個の要素を含んでいる。
【0027】
図5は、パラメータUの一例を示す図である。図5には1番目の第1出力パラメータU1の要素ごとの値が示されている。パラメータU1のk番目の要素はu1_kと表されており、パラメータX1と同様に、小文字のアルファベットと、下付きの番号と、を用いて表されている。図5の例では、入力パラメータU1はu1_1、u1_2、…、u1_10の10個の要素を含んでいる。
【0028】
図6は、パラメータZの一例を示す図である。図6には1番目から100番目の第2入力パラメータZ1からZ100の要素ごとの値が示されている。図6の例では、パラメータZの要素の数は2としている。例えば、パラメータZ1の1番目の要素Z1-1の値は0.5であり、パラメータZ100の2番目の要素Z100-2の値は1.2である。
【0029】
図7は、パラメータYの一例を示す図である。図7には1番目から100番目の第2出力パラメータY1からY100の要素ごとの値が示されている。図7の例では、パラメータYの要素の数は6としている。例えば、パラメータY1の1番目の要素Y1-1の値は1.8であり、パラメータY100の6番目の要素Y100-6の値は2.4である。
【0030】
なお、本実施形態では、パラメータ提供装置11により生成された入力パラメータは各処理装置12に送信されて、各処理装置12が当該入力パラメータを用いてサブ処理を実行することを想定している。しかし、入力パラメータが管理装置13に送信されてもよい。管理装置13を介して入力パラメータを認識したユーザが、各処理装置12に当該入力パラメータを設定してもよい。すなわち、パラメータ提供装置11と各処理装置12とが自動で連動しない場合もあり得る。
【0031】
また、パラメータ提供装置11により生成された入力パラメータが全てサブ処理に用いられなくともよい。例えば、各処理装置12は、受信した入力パラメータを全て用いるとサブ処理の総実行時間が上限値を超えてしまうと判定した場合に、受信した入力パラメータのうちから実際に使用する入力パラメータを選出し、選出された入力パラメータを用いてサブ処理を行ってもよい。
【0032】
なお、一連処理に含まれるサブ処理は、三つ以上であってもよい。その場合、3番目以降のサブ処理は、第2サブ処理同様、それよりも前のサブ処理の出力パラメータを、入力パラメータとして用いる。そのため、一連処理は、直列で実行される複数のサブ処理から構成されているとも言える。また、後続のサブ処理の出力パラメータは、先行のサブ処理の出力に依存する。なお、3番目以降のサブ処理は、第2サブ処理と同様に、パラメータ提供装置11から入力パラメータの提供を受けてもよいし、それよりも前のサブ処理の出力パラメータのみを、入力パラメータとして用いてもよい。なお、サブ処理が三つ以上の場合は、最後のサブ処理が多実行サブ処理であることが好ましく、最後のサブ処理以外のサブ処理へ提供される入力パラメータを少なくし、最後のサブ処理へ提供される入力パラメータを多くすると、一連処理1回あたりの所要時間が膨大とならずに済む。
【0033】
パラメータ提供装置11の処理の詳細を、その構成要素とともに説明する。
【0034】
パラメータ生成部111は、各サブ処理の入力パラメータを生成する。なお、入力パラメータは、1回あたり、一連処理の1回分が生成される。その際、多実行サブ処理の入力パラメータを、少実行サブ処理の入力パラメータよりも、多く生成する。なお、各入力パラメータの生成数は、予め定めておいてよい。なお、前述の通り、2番目以降のサブ処理は、それよりも前のサブ処理の出力パラメータを少なくとも用いるため、パラメータ生成部111が、各処理装置12の全ての入力パラメータを生成するわけではない。
【0035】
パラメータ生成部111による新たな入力パラメータの生成は、前回の一連処理の結果に基づいて好ましいとされた入力パラメータに基づいて行われる。入力パラメータが好ましいか否かの判定は、後述の選出部113によって行われる。
【0036】
入力パラメータの生成方法は、従来手法を用いてよい。例えば、ベイズ最適化(BO)や、共分散行列適応進化戦略(CMA-ES)、遺伝アルゴリズム(GA)などの進化戦略を用いてよい。例えば、これまでに選出された入力パラメータと、評価値と、の関係性を示す関数に含まれるパラメータを、ガウス過程などに基づいて更新し、更新された関数の出力が最大となるような入力パラメータの値を次回の入力パラメータの値としてもよい。
【0037】
例えばベイズ最適化を用いる場合、入力パラメータと、当該入力パラメータによって生成された出力パラメータに対する評価値と、の組み合わせを用いて、入力パラメータに対する評価値の事後確率を、ベイズルールに則って推定する。当該事後確率は、入力パラメータおよび評価値の平均値および分散の関係式として表されてもよい。平均値および分散の関係式の推定方法は、ガウス過程回帰、ランダムフォレスト回帰といった従来手法を用いてよい。
【0038】
例えば、ガウス過程回帰を用いる場合は、対象とする評価済みのn個のパラメータのi(iは1以上の整数)番目をaとし、j(jは1以上の整数)番目をaとし、要素aに対応する評価値をbとする。また、評価値bの平均値mは関数μ0(a)で表され、aとaの共分散Ki,jは関数k(a,a)で表されるとする。つまり、m=μ0(a)と、Ki,j=k(a,a)と、が成り立つとする。なお、μ(a)は任意の関数であり、k(a,a)は任意のカーネル関数である。カーネル関数は、従来手法、例えば、指数二乗カーネル、マターンカーネル、線形カーネル、ガウスカーネルなどを用いてよい。このとき、パラメータaと、パラメータaに対する評価値bの平均値と、の関係式μ(a)は、次式で表される。
【数1】
なお、ベクトルmはi番目の要素がmのベクトル、行列Kはi,j要素がKi,jの行列、ベクトルk(a)はi番目の要素がk(a)のベクトルであり、k(a)=k(a,a)であり、
は任意の定数である。また、パラメータaに対する評価値bの分散と、の関係式
は、次式で表される。
【数2】
【0039】
推定された事後確率は、獲得関数に用いられる。獲得関数は、PI(Probablity of Improvement)、EI(Expected Improvement)、EHVI(Expected HyperVolume Improvement)、UCB(Upper Confidence Bound)、TS(Thompson Sampling)、ES(Entropy Search)、MI(Mutual Information)などといった従来手法を用いてよい。例えば、PIを獲得関数の手法とする場合、パラメータAに対する獲得関数α(A)は、任意の定数τを用いて、下記の式にて算出することができる。
【数3】
【0040】
パラメータ生成部111は、上記のような獲得関数が最大となるように、入力パラメータを再生成する。この獲得関数の最大化は、従来手法を用いてよい。例えば、全探索、ランダム探索、グリッドサーチ、勾配法、L-BFGS(Limited memory BFGS Method)、Dividing RECTanble、CMA-ES、多スタート局所法などを用いてもよい。
【0041】
なお、1回の一連処理につき、複数の第1入力パラメータを生成し、第1入力パラメータごとに第1サブ処理を実行させる場合もあり得るが、この場合において、local penalizationを行ってもよい。つまり、いくつかの第1入力パラメータに対しては獲得関数が最大となるようにパラメータを再生成するが、残りの第1入力パラメータに対しては、その一つ前までのパラメータにおける獲得関数の値を悪化させることによって再生成を行ってもよい。
【0042】
なお、パラメータ生成部111は、正規分布、一様分布などに基づく乱数を生成し、生成された乱数を入力パラメータとする場合もあり得る。例えば、初めて入力パラメータを生成する場合、生成された入力パラメータが好ましくなく以前の入力パラメータに基づかずに入力パラメータを生成する場合などで行われる。また、ソボル列、ラテン超方格法などによって擬似乱数を生成して入力パラメータとしてもよい。また、進化戦略を用いて、入力パラメータの値を調整してもよい。また、予め記憶部114に記憶された所定の数式に基づいてパラメータの値が調整されてもよい。また、生成される入力パラメータの一部についてはランダムに生成するとしてもよい。少試行の入力パラメータは好ましい値に再作成し、多試行の入力パラメータはランダムに生成するとしてもよい。
【0043】
パラメータ生成部111は、生成したパラメータを、サブ処理を実行する各処理装置12に送信する。本実施形態では、生成されたパラメータXは第1処理装置12Aに送信され、生成されたパラメータZは第2処理装置12Bに送信される。なお、第1出力パラメータUが第1処理装置12Aから第2処理装置12Bに直接送信されない場合は、パラメータ生成部111が、第1出力パラメータUを、第2処理装置12Bに送信してもよい。
【0044】
また、前述の通り、第1処理装置12Aが一つのパラメータXに基づいて第1サブ処理を複数回行い、それぞれ異なるパラメータUを出力する場合もあり得る。例えば、パラメータX1に基づいて第1サブ処理を3回行い、パラメータU1、U2、およびU3を出力することもあり得る。この場合に、第1処理装置12AからパラメータU1からU3を受け取ったパラメータ生成部111は、パラメータU1からU3を全て第2処理装置12Bに送信せず、それらの一部を送信してもよい。例えば、パラメータUおよびZの組み合わせ数が所定の上限値を超える場合は、時間がかかり過ぎるとして、第2サブ処理の実行時間に応じて、パラメータUを絞り込んでもよい。絞り込む方法は、適宜に定めてよい。ランダムに選択してもよいし、各要素の値に基づいて決定してもよい。
【0045】
なお、生成するパラメータの値の範囲、パラメータの生成方法などが、管理装置13を介して指定されてもよい。これらの指定は記憶部114に記憶され、パラメータ生成時に読み込まれればよい。また、パラメータの各要素それぞれに対して指定が行われてもよいし、パラメータの全要素に対する指定が行われてもよい。
【0046】
また、パラメータ生成部111は、パラメータの生成のみならず、サブ処理に関する設定を決定してもよい。例えば、各処理装置12のサブ処理の実行時間に基づき、1回の一連処理における各サブ処理の実行回数、言い換えれば、1回の一連処理における入力パラメータの数(本実施形態ではパラメータZの数)を決定してもよい。例えば、第1サブ処理1回あたりの実行時間tと、第2サブ処理1回あたりの実行時間tと、に基づいて各サブ処理の入力パラメータの数を決定してもよい。より具体的には、第1サブ処理の1回あたりの実行時間に対する第2サブ処理の1回あたりの実行時間の比を、第2入力パラメータZの数としてもよい。言い換えれば、一つの第1入力パラメータXに対し、比t/tの数だけ第2入力パラメータZを生成するとしてもよい。また、この比を上回らない閾値とするパラメータZの数を適宜定めてもよい。このような場合、パラメータ生成部111は、サブ処理の設定を管理する管理部とも言える。
【0047】
評価値算出部112は、出力パラメータ引数とする評価関数に基づき、各出力パラメータに対して評価値を算出する。評価関数は、適宜に定めてよい。例えば、線形写像でもよいし、シグモイド関数のような非線形写像でもよいし、複数の手法の組み合わせであってもよい。例えば、予め理想の出力パラメータが判明している場合は、実際の出力パラメータと、理想の出力パラメータと、の差分を評価値としてもよい。また、出力パラメータの各要素の和、積、それらの組み合わせといった演算値を評価値としてもよい。
【0048】
また、評価値算出部112は、パラメータYそれぞれに対して一つの評価値を算出してもよいし、複数の評価値を算出してもよい。例えば、評価関数を複数用意しておき、複数の評価関数それぞれに対して評価値を算出してもよい。また、パラメータYの各要素に対する評価値を算出してもよい。パラメータYの各要素に対しても、複数の評価関数を用いて複数の評価値を算出してもよい。
【0049】
図8は、算出される評価値の一例を示す図である。図8の例では、二つの評価関数を用い、パラメータYに対する評価値を評価関数それぞれごとに算出している。
【0050】
選出部113は、評価値算出部112からの評価値に基づいて、各評価値に対応する入力パラメータの組み合わせのうちから、言い換えれば、前回の一連処理に用いられた入力パラメータの組み合わせのうちから、好ましい組み合わせを選出する。本実施形態では、第1入力パラメータXと第2入力パラメータZの好ましい組み合わせを選出する。好ましい組み合わせか否かは、評価値が選出のための条件(選出条件)を満たすかどうかに基づいて判定すればよい。すなわち、選出条件を満たす評価値に対応するパラメータYを選出して、選出されたパラメータYの生成に関わったパラメータXおよびZを選出する。
【0051】
選出条件は、適宜に定めてよい。例えば、評価値が小さいほど評価が高い場合には、最小の評価値に対応するパラメータYを選出してもよい。評価値が大きいほど評価が高い場合は、最大の評価値に対応するパラメータYを選出してもよい。また、各パラメータYに対して複数の評価値が算出された場合は、例えば、複数のパラメータYを二つずつ比較していき、優れた評価値を多く有するほうを残し、最後まで残ったパラメータYを最も好ましい結果であると決定してもよい。あるいは、二つのパラメータYの各評価値の差分の総和に基づいて優劣を決定していき、最後まで残ったパラメータYを最適として決定してもよい。
【0052】
また、選出条件を満たす評価値が複数ある場合、当該評価値に対応するパラメータYの全てが選出されてもよい。例えば、評価値が閾値以上であるパラメータYを選出するという選出条件では、評価値が当該閾値以上の複数のパラメータYが選出されてもよい。また、例えば、他のパラメータYの支配下にあるパラメータYだけを選出しないとしてもよい。言い換えれば、各要素の評価値全てが他のパラメータYの評価値を下回るパラメータYだけを選出しないとしてもよい。
【0053】
また、パラメータYが複数の要素を含む場合、全ての要素に対する選出条件が非劣解であるパラメータYを選出してもよい。なお、非劣解とは現在入手出来ている解集合の中でどの解と比較しても優越関係を満たさない解のことを指す。例えば、次元Lに対し、すべての次元Lで解Aと解Bが
が成立するとき解Aは解Bに支配される、と呼び、いずれの解にも支配されない解を非劣解と呼ぶ。
【0054】
また、パラメータYが複数の要素を含む場合、選出条件がランクの高いものからパラメータYを選出してもよい。ランクとは、下記の手順におおよそ従う解集合の優劣順位集合である。ある解集合が与えられたとして、その解集合から非劣解となる解集合をランク1とし、その解集合(ランク1)を除外した元の解集合から再度非劣解を求めそれをランク2とする。続いて非劣解(ランク2)を除去した元の解集合から再度非劣解を求めそれをランク3とする。このランク操作をすべての解集合に割り振った中で、選出数が既定数に満たすまでランクの数が小さい解集合を選出してもよい。
【0055】
また、評価値算出部112は、出力パラメータYの複数の要素のうちの特定の要素に対する評価値に基づいて、出力パラメータYを選出してもよい。また、評価値を算出する方法も、ParEGO(Pareto efficient Global Optimization)、期待ハイパーボリューム改善量(EHVI)、リグレット、エントロピーなどが想定されるが、適宜に定めてよい。また、評価対象とする特定の要素は、一つでも複数でもよい。評価対象の要素が複数の場合は、二つ以上の値を入力として受け取って一つの値を出力する関数を評価関数として用いればよく、評価関数は、線形写像でもよいし、非線形写像でもよい。評価対象の要素が一つの場合、評価対象の要素の値をそのまま評価値としてもよい。
【0056】
例えば、ParEGOを用いる場合を説明する。評価値の算出に用いられる出力パラメータYの要素をyとyとし、重みパラメータWのi番目の要素をwとすると、ParEGOに基づく評価値gTche(y,y,w)は、次式のように表される。
【数4】
なお、重みパラメータWの各要素は次式を満たすようにサンプリングされる。
【数5】
なお、評価関数が加重線形和(weighted sum)の場合、評価関数の各項の重みを設定する任意の実数を入力してもよい。この時、2つの要素yおよびyにかかる係数をα,βとすると、評価関数gweighted sumは次式のように表される。
【数6】
このように、評価される出力パラメータの要素と、評価関数と、を、一連処理の内容に応じて設定することにより、パラメータの探索の精度が向上することが期待される。
【0057】
このように、選出に関連する要素、選出される数などが指定されることにより、次回の入力パラメータの数が爆発的に増加することを抑えてもよい。
【0058】
なお、選出条件を満たすパラメータがない場合は、入力パラメータが選出されなくともよい。その場合、パラメータ生成部111は、前回作成した入力パラメータを、進化戦略、乱数などを用いて調整してもよい。
【0059】
なお、前述の通り、第1サブ処理に複数の第1入力パラメータを1度に与える場合もあり得る。その場合は、第1入力パラメータごとに、好ましい入力パラメータの組み合わせが決定される。図9は、選出について説明する図である。図9の例では、第1入力パラメータX1、X2、およびX3が第1処理装置12Aに1度に与えられており、第1入力パラメータごとに第2出力パラメータYが100個ずつ生成されて評価値OBJ1からOBJ300まで算出されている。この場合、評価値OBJ1からOBJ300までを比較するのではなく、第1入力パラメータX1に対応する評価値OBJ1からOBJ100までが比較されて選出が行われ、第1入力パラメータX2に対応する評価値OBJ101からOBJ200までが比較されて選出が行われ、第1入力パラメータX3に対応する評価値OBJ201からOBJ300までが比較されて選出が行われる。図9の例では、図9に示される表の最も左側の列に「YES」と記載されているパラメータの組み合わせが好ましいものとして選出されたことを示している。つまり、図9の例では、(X1,Y2)と、(X2,Y101)と、(X3,Y300)と、が選出されている。このように、複数の第1入力パラメータが生成された場合は、第1入力パラメータごとに入力パラメータの組み合わせが選出される。
【0060】
記憶部114は、本実施形態の処理に必要なデータ、処理結果などを記憶する。記憶されるデータは特に限られるものではなく、例えば、各サブ処理に用いられる入力パラメータ、各サブ処理の出力パラメータなどが記憶される。また、各処理装置12から、各サブ処理の実行時間などといった各サブ処理に関する情報を受信した場合に、それらの情報が記憶されてもよい。
【0061】
図10は、記憶部114に記憶される選出されたパラメータに関するデータの一例を示す図である。図10の例では、選出条件を満たすとして選出されたパラメータXおよびZの各要素の値が示されている。また、選出されたパラメータXおよびZに対応するパラメータUおよびYの各要素の値、評価値、各サブ処理に関する情報も含まれている。各サブ処理に関する情報を各処理装置12から受信できる場合は、記憶部114は、このような情報も当該データに含めてよい。
【0062】
また、選出されたパラメータだけでなく各処理装置12の出力パラメータをまとめたデータを記憶してもよい。当該データにも、各処理装置12から受信した各サブ処理に関する情報、例えば、所要時間など、も含めてよい。
【0063】
判定部115は、所定の反復条件に基づいて、一連処理を反復するかどうかを判定する。例えば、一連処理の実行回数が閾値を超えるまで反復するとしてもよいし、一連処理の所要時間が閾値を超えるまで反復するとしてもよい。あるいは、評価値が高いほど良い場合において、選出されたパラメータYの評価値が反復条件の閾値を上回ったときに、反復を停止するとしてもよい。また、選出されたパラメータYの評価値の変動が所定範囲内であることが所定回数続いたときに、反復を停止するとしてもよい。また、複数の反復条件を有し、複数の反復条件のうちの所定数以上が満たされた場合に反復を実行または停止するとしてもよい。
【0064】
反復すると判定された場合、判定部115は、パラメータ生成部111に入力パラメータの再生成を指示し、前述の通り、パラメータ生成部111が、選出された入力パラメータに基づいて入力パラメータを再度生成する。ゆえに、判定部115が所定の条件に基づいて各入力パラメータの再生成の実行是非を判定するとも言える。
【0065】
反復しないと判定された場合、言い換えれば、入力パラメータの再生成を実行しないと判定された場合、判定部115は、推奨する入力パラメータを決定してもよい。推奨する入力パラメータとは、入力パラメータの推奨値である。推奨値は、判定部115によって最適と判定された値でよい。最良の評価値に対応する入力パラメータの値を最適とみなしてよいし、最良の評価値に対応する入力パラメータの値を調整して最適値を決定してもよい。例えば、ある評価値が閾値を上回ったために反復を停止した場合は、当該評価値に対応する入力パラメータを最適とみなしてよい。また、一連処理の所要時間が閾値を超えたために反復を停止した場合は、これまでの評価値のうち最も評価が高い入力パラメータを最適とみなしてよい。あるいは、単に、最後に選出された入力パラメータを最適とみなしてもよい。
【0066】
入出力部116は、管理装置13との入出力を司る。例えば、入出力部116は、パラメータ提供装置11の各処理に用いられる所定事項、例えば、前述の反復条件、選出条件、評価関数のパラメータ、評価する要素などに対する入力を受け付けてもよい。当該入力を受け付けた場合に記憶部114が記憶されている情報を更新することにより、当該入力を反映した処理を実行することができる。また、例えば、入出力部116は、記憶部114に記憶されたパラメータ提供装置11の各処理結果を出力してもよい。例えば、推奨する入力パラメータ、現在の反復回数、一連処理の1回分の入力パラメータの数、各サブ処理および一連処理の実行回数などを出力してもよい。また、出力された設定などに対する修正を受け付けてもよい。当該修正も記憶部114が情報を更新することにより反映される。また、選出された入力パラメータが正しいかどうかの解答を受け付けてもよい。その場合は、評価関数に含まれる定数などの値を変更して、受け付けた解答に近づくようにしてもよい。
【0067】
また、入力および出力の形式は、特に限られるものではない。例えば、管理装置13がディスプレイなどといった表示装置であり、処理結果のグラフなどを示す画像が出力されてもよい。グラフの生成方法などは、従来手法を用いればよい。
【0068】
図11は、出力の一例を示す図である。図11に示されたグラフは、一連処理の実行回数と、最適とされたパラメータYの評価値と、の関係を示す。点線のグラフは、入力パラメータをランダムに生成した場合のグラフであり、実線のグラフは、ベイズ最適化を用いて入力パラメータを生成した場合のグラフである。このように、入力パラメータの生成方法ごとの結果を出力してもよい。これにより、ユーザがパラメータ生成の好ましい手法を認識することができる。
【0069】
なお、説明の便宜上、パラメータ生成部111が各処理装置12にパラメータを送信するとしたが、各処理装置12とのパラメータの入出力も入出力部116を介して行われてもよい。
【0070】
情報処理システムの処理の流れを説明する。図12は、情報処理システムの一連処理の概略フローチャートである。
【0071】
パラメータ提供装置11のパラメータ生成部111が、入力パラメータXおよびZを生成する(S101)。入力パラメータXおよびZは、以前に選出された入力パラメータXおよびZに基づいて生成される。入力パラメータXおよびZを最初に生成する場合など、選出されたパラメータがない場合は、前述のように乱数などに基づいて生成する。第1処理装置12Aは、第1入力パラメータXをパラメータ提供装置11から受け取り、第1入力パラメータXに基づいて第1サブ処理を実行し、第1出力パラメータUを出力する(S102)。そして、第2処理装置12Bは、第2入力パラメータZと、第1出力パラメータUと、に基づいて第2サブ処理を実行し、第2出力パラメータYを出力する(S103)。第2入力パラメータZと、第1出力パラメータUと、は、両方ともパラメータ提供装置11から取得してもよいし、第1出力パラメータUは、第1処理装置12Aから取得してもよい。
【0072】
パラメータ提供装置11の評価値算出部112は、第2出力パラメータYに対する評価値を算出し(S104)、選出部113は、当該評価値に基づいて、前回生成した入力パラメータXおよびZのうちから、好ましい入力パラメータXおよびZを選出する(S105)。
【0073】
判定部115は、所定の条件に基づいて、入力パラメータXおよびZの生成を反復するか否かを判定する(S106)。反復すると判定された場合(S107のYES)は、S101の処理に戻り、パラメータ生成部111は、再度、新たな入力パラメータXおよびZを生成する(S101)。このようにして、反復しないと判定されるまで、S101からS106の処理が繰り返されて、生成される入力パラメータXおよびZが適切な値に近づくことになる。反復しないと判定された場合(S107のNO)は、判定部115が最適とされる入力パラメータXおよびZを決定して(S108)、フローが終了する。
【0074】
なお、本説明でのフローチャートは一例であり、処理が実行可能であればフローの順番を入れ替えてもよいし、各処理が並行に行われてもよい。例えば、判定部115の反復判定(S106)は、評価値算出(S104)の前に行うようにすることも考えられる。また、最適とされる入力パラメータXおよびZが決定しなくともよい場合は、S108の処理は省略され得る。このように、フローは適宜調整されてよい。
【0075】
以上のように、本実施形態によれば、一連処理に含まれる複数のサブ処理のパラメータの値を決定する場合に、短時間のサブ処理のパラメータの値の候補を、長時間のサブ処理のパラメータの値の候補よりも多くする。そして、1回の一連処理において短時間のサブ処理を複数回実行し、一連処理の実行回数を抑える。このようにすることにより、一連処理の実行回数を抑えても、最終的に決定されたパラメータの値の精度の低下を抑えることができる。
【0076】
なお、上記の実施形態の少なくとも一部は、プロセッサ、メモリなどを実装しているIC(Integrated Circuit:集積回路)などの専用の電子回路(すなわちハードウェア)により実現されてもよい。また、上記の実施形態の少なくとも一部は、ソフトウェア(プログラム)を実行することにより、実現されてもよい。例えば、汎用のコンピュータ装置を基本ハードウェアとして用い、コンピュータ装置に搭載されたCPUなどのプロセッサにプログラムを実行させることにより、上記の実施形態の処理を実現することが可能である。
【0077】
例えば、コンピュータが読み取り可能な記憶媒体に記憶された専用のソフトウェアをコンピュータが読み出すことにより、コンピュータを上記の実施形態の装置とすることができる。記憶媒体の種類は特に限定されるものではない。また、通信ネットワークを介してダウンロードされた専用のソフトウェアをコンピュータがインストールすることにより、コンピュータを上記の実施形態の装置とすることができる。こうして、ソフトウェアによる情報処理が、ハードウェア資源を用いて、具体的に実装される。
【0078】
図13は、本発明の一実施形態におけるハードウェア構成の一例を示すブロック図である。パラメータ提供装置11は、プロセッサ21と、主記憶装置22と、補助記憶装置23と、ネットワークインタフェース24と、デバイスインタフェース25と、を備え、これらがバス26を介して接続されたコンピュータ装置2として実現できる。記憶部114は、主記憶装置22または補助記憶装置23により実現可能であり、ソフトウェア実行検知部など記憶部114以外の構成要素は、プロセッサ21により実現可能である。
【0079】
なお、図13のコンピュータ装置2は、各構成要素を一つ備えているが、同じ構成要素を複数備えていてもよい。また、図13は、1台のコンピュータ装置2が示されているが、ソフトウェアが複数のコンピュータ装置にインストールされて、当該複数のコンピュータ装置それぞれがソフトウェアの異なる一部の処理を実行してもよい。
【0080】
プロセッサ21は、コンピュータの制御装置および演算装置を含む電子回路である。プロセッサ21は、コンピュータ装置2の内部構成の各装置などから入力されたデータやプログラムに基づいて演算処理を行い、演算結果や制御信号を各装置などに出力する。具体的には、プロセッサ21は、コンピュータ装置2のOS(オペレーティングシステム)や、アプリケーションなどを実行し、コンピュータ装置2を構成する各装置を制御する。プロセッサ21は、上記の処理を行うことができれば特に限られるものではない。
【0081】
主記憶装置22は、プロセッサ21が実行する命令および各種データなどを記憶する記憶装置であり、主記憶装置22に記憶された情報がプロセッサ21により直接読み出される。補助記憶装置23は、主記憶装置22以外の記憶装置である。なお、これらの記憶装置は、電子情報を格納可能な任意の電子部品を意味するものとし、メモリでもストレージでもよい。また、メモリには、揮発性メモリと、不揮発性メモリがあるが、いずれでもよい。
【0082】
ネットワークインタフェース24は、無線または有線により、通信ネットワーク3に接続するためのインタフェースである。ネットワークインタフェース24は、既存の通信規格に適合したものを用いればよい。ネットワークインタフェース24により、通信ネットワーク3を介して通信接続された外部装置4Aと情報のやり取りが行われてもよい。
【0083】
デバイスインタフェース25は、外部装置4Bと直接接続するUSBなどのインタフェースである。外部装置4Bは、外部記憶媒体でもよいし、データベースなどのストレージ装置でもよい。
【0084】
外部装置4Aおよび4Bは出力装置でもよい。出力装置は、例えば、画像を表示するための表示装置でもよいし、音声などを出力する装置などでもよい。例えば、LCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)、PDP(Plasma Display Panel)、スピーカなどがあるが、これらに限られるものではない。
【0085】
なお、外部装置4Aおよび4Bは入力装置でもよい。入力装置は、キーボード、マウス、タッチパネルなどのデバイスを備え、これらのデバイスにより入力された情報をコンピュータ装置2に与える。入力装置からの信号はプロセッサ21に出力される。
【0086】
上記に、本発明の一実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、移行を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0087】
1 情報処理システム
11 パラメータ提供装置(情報処理装置)
111 パラメータ生成部
112 評価値算出部
113 選出部
114 記憶部
115 判定部
116 入出力部
12A 第1処理装置
12B 第2処理装置
13 管理装置
2 コンピュータ装置
21 プロセッサ
22 主記憶装置
23 補助記憶装置
24 ネットワークインタフェース
25 デバイスインタフェース
26 バス
3 通信ネットワーク
4Aおよび4B 外部装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13