JP2023059128A - 情報処理プログラム、情報処理方法、および情報処理装置 - Google Patents

情報処理プログラム、情報処理方法、および情報処理装置 Download PDF

Info

Publication number
JP2023059128A
JP2023059128A JP2021169065A JP2021169065A JP2023059128A JP 2023059128 A JP2023059128 A JP 2023059128A JP 2021169065 A JP2021169065 A JP 2021169065A JP 2021169065 A JP2021169065 A JP 2021169065A JP 2023059128 A JP2023059128 A JP 2023059128A
Authority
JP
Japan
Prior art keywords
value
information processing
characteristic
processing apparatus
index value
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.)
Pending
Application number
JP2021169065A
Other languages
English (en)
Inventor
昭人 丸尾
Akito Maruo
健司 本間
Kenji Honma
秀幸 實宝
Hideyuki Jippo
武志 添田
Takeshi Soeda
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2021169065A priority Critical patent/JP2023059128A/ja
Priority to US17/840,670 priority patent/US20230121368A1/en
Priority to EP22179863.0A priority patent/EP4167146A1/en
Priority to CN202210783037.0A priority patent/CN115982520A/zh
Publication of JP2023059128A publication Critical patent/JP2023059128A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24542Plan optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Physiology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Genetics & Genomics (AREA)
  • Biomedical Technology (AREA)
  • Operations Research (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Figure 2023059128000001
【課題】特性予測モデルの信頼性を考慮した多目的最適化を実施可能にすること。
【解決手段】情報処理装置100は、複数の特性変数のそれぞれの特性変数について、第1の多目的最適化を実施することにより、当該特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合を生成する。情報処理装置100は、それぞれの特性変数について、生成した解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定する。情報処理装置100は、特定した指標値δに基づくペナルティ項を含む、それぞれの特性変数の値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、それぞれの特性変数の値の組み合わせの解集合を生成する。
【選択図】図1

Description

本発明は、情報処理プログラム、情報処理方法、および情報処理装置に関する。
従来、学習データを用いて、複数の目的変数と複数の説明変数との関係をモデル化し、入力された複数の説明変数に応じて複数の目的変数のそれぞれの目的変数の予測値を出力する特性予測モデルを学習する技術がある。また、特性予測モデルを用いて、複数の目的変数の値を最適化する複数の説明変数の解を求める多目的最適化と呼ばれる技術がある。
先行技術としては、例えば、有機EL装置の製造に用いる製造パラメータと、製造パラメータで製造した有機EL装置の製品特性との関係から機械学習し、予測モデルを作成するものがある。また、例えば、線形回帰モデル化によって生成された目的関数のモデル式を用いて、与えられた値域の逆像計算を実行することにより、値域に対応する設計パラメータ組を得る技術がある。
特開2021-034168号公報 特開2010-122832号公報
しかしながら、従来技術では、多目的最適化で求めた複数の説明変数の解を信頼することができない場合がある。例えば、特定の説明変数の領域に関する学習データを用いずに学習した特性予測モデルを用いて、多目的最適化を実施する場合が考えられる。この場合、特性予測モデルは、特定の説明変数の領域に応じたそれぞれの目的変数の予測値を精度よく求めることができない。従って、多目的最適化は、複数の目的変数の値を適切に最適化することができず、複数の説明変数の解を精度よく求めることができない。
1つの側面では、本発明は、特性予測モデルの信頼性を考慮した多目的最適化を実施可能にすることを目的とする。
1つの実施態様によれば、複数の特性変数のそれぞれについて、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成し、前記複数の特性変数のそれぞれについて、生成した前記解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定し、特定した前記指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する情報処理プログラム、情報処理方法、および情報処理装置が提案される。
一態様によれば、特性予測モデルの信頼性を考慮した多目的最適化を実施可能にすることが可能になる。
図1は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。 図2は、情報処理システム200の一例を示す説明図である。 図3は、情報処理装置100のハードウェア構成例を示すブロック図である。 図4は、情報処理装置100の機能的構成例を示すブロック図である。 図5は、情報処理装置100の動作例1を示す説明図(その1)である。 図6は、情報処理装置100の動作例1を示す説明図(その2)である。 図7は、情報処理装置100の動作例1を示す説明図(その3)である。 図8は、情報処理装置100の動作例1を示す説明図(その4)である。 図9は、情報処理装置100の動作例1を示す説明図(その5)である。 図10は、情報処理装置100の動作例1を示す説明図(その6)である。 図11は、情報処理装置100の動作例1を示す説明図(その7)である。 図12は、情報処理装置100の動作例1を示す説明図(その8)である。 図13は、情報処理装置100の動作例1を示す説明図(その9)である。 図14は、情報処理装置100の動作例1を示す説明図(その10)である。 図15は、情報処理装置100の動作例1を示す説明図(その11)である。 図16は、情報処理装置100の動作例1を示す説明図(その12)である。 図17は、情報処理装置100の動作例1を示す説明図(その13)である。 図18は、情報処理装置100の動作例1を示す説明図(その14)である。 図19は、情報処理装置100の動作例1を示す説明図(その15)である。 図20は、情報処理装置100の動作例1を示す説明図(その16)である。 図21は、情報処理装置100の動作例1を示す説明図(その17)である。 図22は、情報処理装置100の動作例1を示す説明図(その18)である。 図23は、情報処理装置100の動作例1を示す説明図(その19)である。 図24は、動作例1における設定処理手順の一例を示すフローチャートである。 図25は、動作例1における求解処理手順の一例を示すフローチャートである。 図26は、動作例1における更新処理手順の一例を示すフローチャートである。 図27は、情報処理装置100の動作例2を示す説明図(その1)である。 図28は、情報処理装置100の動作例2を示す説明図(その2)である。 図29は、情報処理装置100の動作例2を示す説明図(その3)である。 図30は、情報処理装置100の動作例2を示す説明図(その4)である。 図31は、情報処理装置100の動作例2を示す説明図(その5)である。 図32は、情報処理装置100の動作例2を示す説明図(その6)である。 図33は、動作例2における更新処理手順の一例を示すフローチャートである。 図34は、情報処理装置100の動作例3を示す説明図(その1)である。 図35は、情報処理装置100の動作例3を示す説明図(その2)である。 図36は、情報処理装置100の動作例3を示す説明図(その3)である。 図37は、情報処理装置100の動作例3を示す説明図(その4)である。 図38は、情報処理装置100の動作例3を示す説明図(その5)である。 図39は、動作例3における求解処理手順の一例を示すフローチャートである。 図40は、単目的最適化の一例を示す説明図である。
以下に、図面を参照して、本発明にかかる情報処理プログラム、情報処理方法、および情報処理装置の実施の形態を詳細に説明する。
(実施の形態にかかる情報処理方法の一実施例)
図1は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。情報処理装置100は、複数の特性変数のそれぞれの特性変数の値を探索するための目的関数を用いて多目的最適化を実施するためのコンピュータである。
目的関数は、例えば、特性変数の値を探索し、特性変数の値を好ましい値に近付けるための関数である。目的関数は、具体的には、特性変数の値を最適化するための関数である。最適化は、例えば、最小化または最大化である。
多目的最適化は、例えば、遺伝的アルゴリズムを用いる。多目的最適化は、例えば、目的変数となるそれぞれの特性変数の値を最適化し、それぞれの特性変数の値の組み合わせについて、複数の解を求める手法である。例えば、多目的最適化で求められた解は、「パレート解」と呼ばれることがある。パレート解は、1つに限定されない傾向がある。このため、多目的最適化は、具体的には、パレート解集合を求めることになる。
特性変数は、例えば、多目的最適化の目的変数となる。特性変数の値は、例えば、モデルにより予測される。特性変数の値は、具体的には、説明変数に応じてモデルにより予測される。モデルは、例えば、複数の特性変数と、複数の説明変数との関係を示す。モデルは、例えば、学習データに基づいて学習される。モデルは、例えば、特性予測モデルである。最適化は、例えば、最小化または最大化である。パレート解は、例えば、最適化したそれぞれの特性変数の値と、それぞれの特性変数の値を最適化する場合におけるモデルのパラメータとを含む。
従来技術では、多目的最適化で求めたパレート解を、信頼することができない場合がある。例えば、分布が比較的狭い複数の学習データを用いて学習した特性予測モデルを用いて、多目的最適化を実施する場合が考えられる。具体的には、特定の説明変数の領域に関する学習データを用いずに学習した特性予測モデルを用いて、多目的最適化を実施する場合が考えられる。
この場合、特性予測モデルは、特定の説明変数の領域に応じたそれぞれの特性変数の予測値を精度よく求めることができない。従って、多目的最適化は、複数の特性変数の値を適切に最適化することができず、パレート解集合を精度よく求めることができない。例えば、多目的最適化は、特性予測モデルを用いて、精度が比較的悪いパレート解候補を淘汰せずに残してしまい、複数の特性変数の値を適切に最適化することができず、パレート解集合を精度よく求めることができない。
そこで、本実施の形態では、特性予測モデルの信頼性を考慮した多目的最適化を実施可能にすることができる情報処理方法について説明する。
(1-1)情報処理装置100は、複数の特性変数のそれぞれの特性変数について、第1の多目的最適化を実施することにより、当該特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合を生成する。特性変数の値は、例えば、モデル101により予測される。モデル101は、例えば、複数の学習データに基づいて学習される。
モデル101は、例えば、少なくとも、特性変数と説明変数との関係を示し、特性変数の値を予測可能にする。モデル101は、例えば、さらに、特性変数の値の信頼性を示す指標値を算出可能にしてもよい。モデル101は、具体的には、ガウス過程回帰モデルである。指標値は、例えば、信頼性が低いほど値が大きくなる性質を有するとする。指標値は、例えば、モデル101により算出される。指標値は、例えば、モデル101により算出されない場合があってもよい。指標値は、例えば、学習データに基づいて算出される場合があってもよい。
第1の多目的最適化は、例えば、特性変数の値を探索するための目的関数と、当該特性変数の値の信頼性を示す指標値を探索するための目的関数とを用いて、当該特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合を生成する処理である。特性変数の値を探索するための目的関数は、例えば、特性変数の値を最適化するための目的関数である。最適化は、例えば、最小化、または、最大化である。
特性変数の値の信頼性を示す指標値を探索するための目的関数は、例えば、特性変数の値の信頼性を示す指標値を最適化するための目的関数である。特性変数の値の信頼性を示す指標値を最適化するための目的関数は、例えば、当該特性変数の値の信頼性を示す指標値を最小化するための目的関数である。解は、例えば、最適化した特性変数の値と、当該特性変数の値の信頼性を示す指標値とを含み、さらに、当該特性変数の値を最適化する場合におけるモデル101のパラメータを含む。情報処理装置100は、例えば、グラフ102に示す解集合を生成する。グラフ102の横軸は、例えば、特性変数の値であり、グラフ102の縦軸は、例えば、特性変数の値の信頼性を示す指標値である。
(1-2)情報処理装置100は、それぞれの特性変数について、生成した解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定する。情報処理装置100は、例えば、利用者の操作入力に基づき、生成した解集合のいずれかの解の指定を受け付け、それぞれの特性変数について、指定の解となる組み合わせに含まれる指標値δを特定する。これにより、情報処理装置100は、それぞれの特性変数について、モデル101の信頼性を考慮する基準となる、いずれかの指標値δを特定することができる。
(1-3)情報処理装置100は、第2の多目的最適化を実施することにより、それぞれの特性変数の値の組み合わせの解集合を生成する。特性変数の値は、例えば、モデル101により予測される。第2の多目的最適化は、例えば、特定した指標値δに基づくペナルティ項を含む、それぞれの特性変数の値を探索するための目的関数を用いて、それぞれの特性変数の値の組み合わせの解集合を生成する処理である。特性変数の値を探索するための目的関数は、例えば、特性変数の値を最適化するための目的関数である。最適化は、例えば、最小化、または、最大化である。
特性変数の値を最適化するための目的関数は、例えば、当該特性変数について特定した指標値δに基づくペナルティ項を含む。特性変数の値を最適化するための目的関数に含まれるペナルティ項は、具体的には、当該特性変数の値の信頼性を示す指標値が、当該特性変数について特定した指標値δより大きいと、値が大きくなる性質を有する。解は、例えば、最適化したそれぞれの特性変数の値を含み、さらに、それぞれの特性変数の値を最適化する場合におけるモデル101のパラメータを含む。情報処理装置100は、例えば、グラフ103に示す解集合を生成する。グラフ103の横軸は、例えば、ある特性変数の値であり、グラフ102の縦軸は、例えば、別の特性変数の値である。
これにより、情報処理装置100は、それぞれの特性変数の値を最適化することができる。情報処理装置100は、例えば、モデル101の信頼性を考慮した第2の多目的最適化を実施することができ、それぞれの特性変数の値を精度よく最適化することができ、解集合を精度よく求めることができる。
このため、情報処理装置100は、信頼性が比較的高い解集合を求めることができ、利用者が、有用性が比較的高い解集合を利用可能にすることができ、利便性の向上を図ることができる。利用者は、例えば、自身の目的に合わせて、解集合の中から所望の解を選択することができる。利用者は、例えば、自身の目的に合わせて、選択した所望の解に含まれるパラメータを利用することができる。
また、情報処理装置100は、分布が比較的狭い複数の学習データを用いて学習したモデル101に基づき第2の多目的最適化を実施していても、解集合を精度よく求めることができる。このため、情報処理装置100は、モデル101の学習にかかる作業負担の低減化を図ることができる。
ここでは、指標値が、信頼性が低いほど値が大きくなる性質を有する場合について説明したが、これに限らない。例えば、指標値が、信頼性が高いほど値が大きくなる性質を有する場合があってもよい。
ここでは、指標値が、信頼性が低いほど値が大きくなる性質を有し、特性変数の値の信頼性を示す指標値を最適化するための目的関数が、当該特性変数の値の信頼性を示す指標値を最小化するための目的関数である場合について説明したが、これに限らない。例えば、指標値が、信頼性が低いほど値が大きくなる性質を有し、特性変数の値の信頼性を示す指標値を最適化するための目的関数が、当該特性変数の値の信頼性を示す指標値を最大化するための目的関数である場合があってもよい。この場合、第2の多目的最適化における、特性変数の値を最適化するための目的関数に含まれるペナルティ項は、具体的には、当該特性変数の値の信頼性を示す指標値が、当該特性変数について特定した指標値より小さいと、値が大きくなる性質を有することが好ましい。
ここでは、情報処理装置100が、単独で動作する場合について説明したが、これに限らない。例えば、情報処理装置100が、他のコンピュータと協働する場合があってもよい。例えば、情報処理装置100が、それぞれの特性変数について、第1の多目的最適化を実施し、いずれかの解となる組み合わせに含まれる指標値を特定し、特定した指標値を、第2の多目的最適化を実施可能な他のコンピュータに送信する場合があってもよい。また、例えば、情報処理装置100が、図2に後述するようなクライアントサーバ方式のシステムを形成する場合があってもよい。
(情報処理システム200の一例)
次に、図2を用いて、図1に示した情報処理装置100を適用した、情報処理システム200の一例について説明する。
図2は、情報処理システム200の一例を示す説明図である。図2において、情報処理システム200は、情報処理装置100と、クライアント装置201とを含む。
情報処理システム200において、情報処理装置100とクライアント装置201とは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
情報処理装置100は、複数の特性変数のそれぞれの特性変数の値の組み合わせのパレート解集合を求めるためのコンピュータである。情報処理装置100は、例えば、処理要求を、クライアント装置201から受信する。処理要求は、例えば、複数の特性変数のそれぞれの特性変数の値の組み合わせのパレート解集合を求めることを要求する通知である。
情報処理装置100は、例えば、処理要求を受信すると、それぞれの特性変数について、第1の多目的最適化を実施することにより、当該特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせのパレート解集合を生成する。
情報処理装置100は、例えば、それぞれの特性変数について、生成したパレート解集合のうち、当該特性変数が指定の値である場合のパレート解となる組み合わせに含まれる指標値を特定する。情報処理装置100は、具体的には、それぞれの特性変数に対応付けて、当該特性変数について生成したパレート解集合を、クライアント装置201に送信する。情報処理装置100は、具体的には、パレート解集合を送信した結果、それぞれの特性変数について、生成したパレート解集合のいずれかのパレート解を選択することを示す指示を、クライアント装置201から受信する。情報処理装置100は、具体的には、それぞれの特性変数について、生成したパレート解集合のうち、受信した指示が示すパレート解となる組み合わせに含まれる指標値を、基準値として特定する。
情報処理装置100は、第2の多目的最適化を実施することにより、それぞれの特性変数の値の組み合わせのパレート解集合を生成する。情報処理装置100は、生成したパレート解集合を、クライアント装置201に送信する。情報処理装置100は、例えば、サーバ、または、PC(Personal Computer)などである。
クライアント装置201は、例えば、利用者の操作入力に基づき、処理要求を、情報処理装置100に送信する。クライアント装置201は、例えば、それぞれの特性変数に対応付けられた、当該特性変数について生成されたパレート解集合を、情報処理装置100から受信する。クライアント装置201は、例えば、それぞれの特性変数に対応付けられた、当該特性変数について生成されたパレート解集合を、利用者が参照可能に出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、または、記憶領域への記憶などである。
クライアント装置201は、例えば、利用者の操作入力に基づき、それぞれの特性変数について、生成されたパレート解集合のいずれかのパレート解の選択を受け付ける。クライアント装置201は、例えば、それぞれの特性変数について、生成されたパレート解集合のいずれかのパレート解を選択することを示す指示を、情報処理装置100に送信する。
クライアント装置201は、それぞれの特性変数の値の組み合わせのパレート解集合を、情報処理装置100から受信する。クライアント装置201は、それぞれの特性変数の値の組み合わせのパレート解集合を、利用者が参照可能に出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、または、記憶領域への記憶などである。クライアント装置201は、例えば、PC、タブレット端末、または、スマートフォンなどである。
ここでは、情報処理装置100が、クライアント装置201とは異なるコンピュータである場合について説明したが、これに限らない。例えば、情報処理装置100が、クライアント装置201としての機能を有し、クライアント装置201としても動作する場合があってもよい。
ここで、例えば、情報処理装置100としての機能が、複数のコンピュータに分散され実装される場合があってもよい。具体的には、第1の多目的最適化を実施するコンピュータと、いずれかのパレート解となる組み合わせに含まれる指標値を特定するコンピュータと、第2の多目的最適化を実施するコンピュータとが存在し、協働する場合があってもよい。
(情報処理装置100のハードウェア構成例)
次に、図3を用いて、情報処理装置100のハードウェア構成例について説明する。
図3は、情報処理装置100のハードウェア構成例を示すブロック図である。図3において、情報処理装置100は、CPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305とを有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、情報処理装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることにより、コーディングされている処理をCPU301に実行させる。
ネットワークI/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F303は、例えば、モデムやLANアダプタなどである。
記録媒体I/F304は、CPU301の制御に従って記録媒体305に対するデータのリード/ライトを制御する。記録媒体I/F304は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体305は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体305は、情報処理装置100から着脱可能であってもよい。
情報処理装置100は、上述した構成部の他、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を複数有していてもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を有していなくてもよい。
(クライアント装置201のハードウェア構成例)
クライアント装置201のハードウェア構成例は、図3に示した情報処理装置100のハードウェア構成例と同様であるため、説明を省略する。
(情報処理装置100の機能的構成例)
次に、図4を用いて、情報処理装置100の機能的構成例について説明する。
図4は、情報処理装置100の機能的構成例を示すブロック図である。情報処理装置100は、記憶部400と、取得部401と、学習部402と、第1最適化部403と、特定部404と、第2最適化部405と、出力部406とを含む。
記憶部400は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域によって実現される。以下では、記憶部400が、情報処理装置100に含まれる場合について説明するが、これに限らない。例えば、記憶部400が、情報処理装置100とは異なる装置に含まれ、記憶部400の記憶内容が情報処理装置100から参照可能である場合があってもよい。
取得部401~出力部406は、制御部の一例として機能する。取得部401~出力部406は、具体的には、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、ネットワークI/F303により、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶される。
記憶部400は、各機能部の処理において参照され、または更新される各種情報を記憶する。記憶部400は、例えば、複数の学習データを記憶する。学習データは、例えば、複数の説明変数の値と、複数の目的変数となる特性変数の値との組み合わせのサンプルである。学習データは、例えば、取得部401によって取得される。
記憶部400は、例えば、モデルを記憶する。モデルは、例えば、学習データに基づいて学習される。モデルは、例えば、複数の特性変数のそれぞれの特性変数の値を予測可能にする。モデルは、例えば、複数の特性変数のそれぞれの特性変数の値の信頼性を示す指標値を算出可能にしてもよい。指標値は、例えば、信頼性が高いほど値が小さくなる性質を有する。指標値は、例えば、信頼性が高いほど値が大きくなる性質を有していてもよい。モデルは、例えば、ガウス過程回帰モデルである。モデルは、例えば、学習部402によって学習される。モデルは、例えば、取得部401によって取得されてもよい。
記憶部400は、例えば、第1の多目的最適化を実施した結果を記憶する。第1の多目的最適化は、例えば、特性変数の値を探索するための目的関数と、当該特性変数の値の信頼性を示す指標値を探索するための目的関数とを用いる。第1の多目的最適化は、具体的には、特性変数の値を最適化するための目的関数と、当該特性変数の値の信頼性を示す指標値を最適化するための目的関数とを用いる。特定変数の値は、例えば、モデルにより予測される。指標値は、例えば、モデルにより算出される。
指標値は、例えば、学習データに基づいて算出されてもよい。指標値は、具体的には、複数の学習データのそれぞれの学習データから特性変数の値への距離に基づいて算出されてもよい。指標値は、より具体的には、複数の学習データのそれぞれの学習データに含まれる特性変数の値から、モデルにより予測される特性変数の値への距離についての統計値であってもよい。統計値は、例えば、最小値、最大値、平均値、中央値、または、最頻値などである。指標値は、より具体的には、k近傍法によって算出されてもよい。
指標値は、より具体的には、複数の学習データのそれぞれの学習データに含まれる特性変数の値から、モデルにより予測される特性変数の値への距離に基づく、データ密度によって表現されてもよい。データ密度は、例えば、カーネル密度推定により算出される。データ密度は、例えば、OCSVM(One-Class Support Vector Machine)により算出される。データ密度は、例えば、1/daveである。daveは、距離の平均値である。
記憶部400は、具体的には、第1の多目的最適化を実施した結果得られた、特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合を記憶する。解集合は、例えば、特性変数の値と、当該特性変数の値の信頼性を示す指標値との組み合わせの一つを示す解を複数含む。解は、例えば、当該組み合わせに含まれる特性変数の値を算出可能にするモデルのパラメータを含んでいてもよい。解は、例えば、パレート解と呼ばれる。第1の多目的最適化は、例えば、第1最適化部403によって実施される。
記憶部400は、例えば、第2の多目的最適化を実施した結果を記憶する。第2の多目的最適化は、例えば、複数の特性変数のそれぞれの特性変数の値を探索するための目的関数を用いる。第2の多目的最適化は、具体的には、複数の特性変数のそれぞれの特性変数の値を最適化するための目的関数を用いる。特性変数の値は、例えば、モデルにより予測される。目的関数は、例えば、いずれかの指標値に基づくペナルティ項を含む。
記憶部400は、具体的には、第2の多目的最適化を実施した結果得られた、それぞれの特性変数の値の組み合わせの解集合を記憶する。解集合は、例えば、それぞれの特性変数の値の組み合わせの一つを示す解を複数含む。解は、例えば、当該組み合わせを算出可能にするモデルのパラメータを含んでいてもよい。解は、例えば、パレート解と呼ばれる。第2の多目的最適化は、例えば、第2最適化部405によって実施される。
取得部401は、各機能部の処理に用いられる各種情報を取得する。取得部401は、取得した各種情報を、記憶部400に記憶し、または、各機能部に出力する。また、取得部401は、記憶部400に記憶しておいた各種情報を、各機能部に出力してもよい。取得部401は、例えば、利用者の操作入力に基づき、各種情報を取得する。取得部401は、例えば、情報処理装置100とは異なる装置から、各種情報を受信してもよい。
取得部401は、学習データを取得する。取得部401は、例えば、利用者の操作入力に基づき、学習データの入力を受け付けることにより、学習データを取得する。取得部401は、例えば、学習データを、他のコンピュータから受信することにより取得してもよい。他のコンピュータは、例えば、クライアント装置201である。
取得部401は、モデルを取得する。取得部401は、例えば、利用者の操作入力に基づき、モデルの入力を受け付けることにより、モデルを取得する。取得部401は、例えば、モデルを、他のコンピュータから受信することにより取得してもよい。他のコンピュータは、例えば、クライアント装置201である。
取得部401は、複数の特性変数のそれぞれの特性変数の値の組み合わせの解集合を生成することを要求する処理要求を取得する。取得部401は、例えば、利用者の操作入力に基づき、処理要求の入力を受け付けることにより、処理要求を取得する。取得部401は、例えば、処理要求を、他のコンピュータから受信することにより取得してもよい。他のコンピュータは、例えば、クライアント装置201である。
取得部401は、特性変数の値の指定を受け付ける。取得部401は、例えば、第1の多目的最適化を実施した結果得られた、特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合のいずれかの解を特定可能にするため、当該特性変数の値の指定を受け付ける。取得部401は、具体的には、特性変数の値を指定する通知を、他のコンピュータから受信することにより、当該特性変数の値の指定を受け付ける。取得部401は、具体的には、利用者の操作入力に基づき、特性変数の値の入力を受け付けることにより、特性変数の値の指定を受け付けてもよい。
取得部401は、例えば、いずれかの解の指定を受け付けることにより、特性変数の値の指定を受け付けてもよい。取得部401は、具体的には、いずれかの解を指定する通知を、他のコンピュータから受信することにより、いずれかの解の指定を受け付け、いずれかの解に含まれる特性変数の値の指定を受け付けてもよい。取得部401は、具体的には、利用者の操作入力に基づき、いずれかの解の指定を受け付けることにより、いずれかの解に含まれる特性変数の値の指定を受け付けてもよい。
取得部401は、いずれかの機能部の処理を開始する開始トリガーを受け付けてもよい。開始トリガーは、例えば、利用者による所定の操作入力があったことである。開始トリガーは、例えば、他のコンピュータから、所定の情報を受信したことであってもよい。開始トリガーは、例えば、いずれかの機能部が所定の情報を出力したことであってもよい。
取得部401は、例えば、学習データを取得したことを、学習部402の処理を開始する開始トリガーとして受け付けてもよい。取得部401は、例えば、処理要求を取得したことを、第1最適化部403の処理を開始する開始トリガーとして受け付けてもよい。取得部401は、例えば、特性変数の値の指定を受け付けたことを、第2最適化部405の処理を開始する開始トリガーとして受け付けてもよい。
学習部402は、それぞれの特性変数について、当該特性変数の値を予測可能にするモデルを学習する。モデルは、例えば、数式である。モデルは、例えば、ニューラルネットワークなどであってもよい。モデルは、具体的には、ガウス過程回帰モデルである。ガウス過程回帰モデルは、特性変数の値を予測可能、かつ、当該特性変数の値の信頼性を示す指標値を算出可能にする。
学習部402は、例えば、複数の学習データに基づいて、モデルを学習する。学習部402は、具体的には、複数の学習データに基づいて、それぞれの特性変数について、ガウス過程回帰モデルを学習する。これにより、学習部402は、特性変数の値を予測可能にすることができる。また、学習部402は、特性変数の値の信頼性を示す指標値を算出可能にすることができる場合がある。
第1最適化部403は、複数の特性変数のそれぞれの特性変数について、第1の多目的最適化を実施することにより、当該特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合を生成する。特性変数の値は、例えば、学習したモデルにより予測される値である。特性変数の値は、具体的には、ガウス過程回帰モデルにより予測される。指標値は、例えば、ガウス過程回帰モデルにより算出される。指標値は、例えば、複数の学習データに基づいて、第1最適化部403によって算出されてもよい。
第1最適化部403は、例えば、複数の学習データに基づいて、モデルにより予測されるそれぞれの特性変数の値の信頼性を示す指標値を算出しつつ、第1の多目的最適化を実施してもよい。これにより、第1最適化部403は、それぞれの特性変数について、当該特性変数の値と、当該特性変数の値の信頼性を示す指標値との関係を特定することができる。
特定部404は、それぞれの特性変数について、第1最適化部403で生成した解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定する。特定部404は、例えば、それぞれの特性変数について、取得部401で指定を受け付けた特性変数の値を特定し、生成した解集合のうち、当該特性変数が当該指定の値である場合の解となる組み合わせに含まれる指標値を特定する。
特定部404は、例えば、それぞれの特性変数について、生成した解集合のうち、取得部401で指定を受け付けた解となる組み合わせに含まれる指標値を特定する。これにより、特定部404は、それぞれの特性変数について、モデルにより予測される当該特性変数の値の信頼性を考慮するための基準となる指標値を特定することができる。このため、特定部404は、それぞれの特性変数について、モデルにより予測される当該特性変数の値の信頼性を考慮し易くすることができる。
ここで、取得部401で、特性変数の値またはいずれかの解の指定を受け付けていない場合があってもよい。この場合、特定部404は、例えば、それぞれの特性変数について、生成した解集合のうち、z-scoreまたは曲率などに基づいて、いずれかの解を選択することにより、いずれかの解を自動指定する。特定部404は、具体的には、それぞれの特性変数について、生成した解集合のうち、曲率が最大となる解を選択することにより、いずれかの解を自動指定する。
特定部404は、例えば、それぞれの特性変数について、生成した解集合において、ある基準に沿って比較的好ましいと判断した当該特性変数の値を特定することにより、特性変数の値の指定を受け付けてもよい。これにより、特定部404は、それぞれの特性変数について、モデルにより予測される当該特性変数の値の信頼性を考慮するための基準となる指標値を特定することができる。特定部404は、利用者が、特性変数の値を指定せずに済ませることができ、利用者の作業負担の低減化を図ることができる。
特定部404は、第2最適化部405で生成したそれぞれの特性変数の値の組み合わせの解集合において、複数の特性変数のいずれかの特性変数の値が、目標値を満たすか否かを判定する。目標値は、例えば、指定の値に基づき設定される。目標値は、例えば、指定の値である。
特定部404は、例えば、目標値が下限を示す値であれば、特性変数の値が、目標値以上である場合に、特性変数の値が、目標値を満たすと判定する。特定部404は、例えば、目標値が上限を示す値であれば、特性変数の値が、目標値以下である場合に、特性変数の値が、目標値を満たすと判定する。ここで、特定部404は、いずれかの特性変数の値が、目標値を満たさない場合、当該いずれかの特性変数について、直前に特定した指標値とは異なる新たな指標値を特定する。
ここで、例えば、信頼性を示す指標値が、信頼性が低いほど、値が大きくなる指標値であって、信頼性を示す指標値を最適化するための目的関数が、信頼性を示す指標値を最小化するための目的関数である場合がある。この場合、特定部404は、例えば、生成したそれぞれの特性変数の値の組み合わせの解集合において、複数の特性変数のいずれかの特性変数の値が、目標値を満たすか否かを判定する。そして、特定部404は、例えば、目標値を満たさない場合、いずれかの特性変数について、直前に特定した指標値より第1の値だけ大きい新たな指標値を特定する。これにより、特定部404は、第2の多目的最適化を再実施可能にし、より適切な解集合を生成可能にすることができる。
特定部404は、生成したそれぞれの特性変数の値の組み合わせの解集合において、複数の特性変数のいずれかの特性変数の値が、目標値を満たす場合、さらに、目標値を基準とした範囲に含まれるか否かを判定してもよい。例えば、信頼性を示す指標値の最適化が、最小化を示す場合であれば、目標値を基準とした範囲は、目標値より小さい値に関する範囲であることが考えられる。
特定部404は、例えば、いずれかの特性変数の値が、目標値を基準とした範囲に含まれない場合、当該いずれかの特性変数について、直前に特定した指標値より第1の値とは異なる第2の値だけ小さい新たな指標値を特定する。第2の値は、第1の値より小さい値であることが好ましい。これにより、特定部404は、モデルにより予測される特性変数の値の信頼性を考慮する基準を緩和することができ、適切な解集合を生成し易くすることができる。
ここで、例えば、信頼性を示す指標値が、信頼性が低いほど、値が大きくなる指標値であって、信頼性を示す指標値を最適化するための目的関数が、信頼性を示す指標値を最大化するための目的関数である場合がある。この場合、特定部404は、例えば、生成したそれぞれの特性変数の値の組み合わせの解集合において、複数の特性変数のいずれかの特性変数の値が、目標値を満たすか否かを判定する。そして、特定部404は、例えば、目標値を満たさない場合、いずれかの特性変数について、直前に特定した指標値より第1の値だけ小さい新たな指標値を特定する。これにより、特定部404は、第2の多目的最適化を再実施可能にし、より適切な解集合を生成可能にすることができる。
特定部404は、生成したそれぞれの特性変数の値の組み合わせの解集合において、複数の特性変数のいずれかの特性変数の値が、目標値を満たす場合、さらに、目標値を基準とした範囲に含まれるか否かを判定してもよい。例えば、信頼性を示す指標値の最適化が、最大化を示す場合であれば、目標値を基準とした範囲は、目標値より大きい値に関する範囲であることが考えられる。
特定部404は、例えば、いずれかの特性変数の値が、目標値を基準とした範囲に含まれない場合、当該いずれかの特性変数について、直前に特定した指標値より第1の値とは異なる第2の値だけ大きい新たな指標値を特定する。第2の値は、第1の値より小さい値であることが好ましい。これにより、特定部404は、モデルにより予測される特性変数の値の信頼性を考慮する基準を緩和することができ、適切な解集合を生成し易くすることができる。
第2最適化部405は、第2の多目的最適化を実施することにより、それぞれの特性変数の値の組み合わせの解集合を生成する。第2の多目的最適化は、例えば、モデルにより予測されるそれぞれの特性変数の値を最適化するための目的関数を用いる。目的関数は、例えば、特定部404で特定した指標値に基づくペナルティ項を含む。ペナルティ項は、例えば、特性変数の値の信頼性を示す指標値と、当該特性変数について特定部404で特定した指標値との大小関係により、値が変化する性質を有する。ペナルティ項は、具体的には、特性変数の値の信頼性を示す指標値が、当該特性変数について特定部404で特定した指標値よりも、信頼性が低いことを示していれば、値が大きくなる性質を有する。
第2最適化部405は、例えば、それぞれの特性変数の値の組み合わせの解候補における複数の特性変数のいずれかの特性変数の値の信頼性を示す指標値が、特定した指標値より信頼性が低いことを示す値であるか否かを判定する。第2最適化部405は、例えば、いずれかの特性変数の値の信頼性を示す指標値が、特定した指標値より信頼性が低いことを示す値である場合、当該特性変数の値を最適化するための目的関数にペナルティ項を含むよう、当該目的関数を設定する。第2最適化部405は、例えば、いずれかの特性変数の値の信頼性を示す指標値が、特定した指標値より信頼性が高いことを示す値である場合、当該特性変数の値を最適化するための目的関数にペナルティ項を含まないよう、当該目的関数を設定する。第2最適化部405は、例えば、設定した目的関数を用いて、第2の多目的最適化を実施する。
ペナルティ項は、特性変数の値の信頼性を示す指標値が示す信頼性が、特定した指標値が示す信頼性より低いほど、値が大きくなる性質を有していてもよい。第2最適化部405は、例えば、当該ペナルティ項を含む、それぞれの特性変数の値を最適化するための目的関数を設定する。第2最適化部405は、例えば、設定した目的関数を用いて、第2の多目的最適化を実施する。これにより、第2最適化部405は、それぞれの特性変数の値を最適化することができる。また、第2最適化部405は、それぞれの特性変数の値を最適化可能なモデルのパラメータを特定することができる。
出力部406は、少なくともいずれかの機能部の処理結果を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F303による外部装置への送信、または、メモリ302や記録媒体305などの記憶領域への記憶である。これにより、出力部406は、少なくともいずれかの機能部の処理結果を利用者に通知可能にし、情報処理装置100の利便性の向上を図ることができる。
出力部406は、例えば、第1の多目的最適化を実施した結果を出力する。出力部406は、具体的には、第1の多目的最適化を実施した結果得られた、特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合を出力する。これにより、出力部406は、利用者が、特性変数の値を指定し易くすることができる。このため、出力部406は、取得部401で、特性変数の値の指定を受け付け易くすることができる。
出力部406は、例えば、第2の多目的最適化を実施した結果を出力する。出力部406は、具体的には、第2の多目的最適化を実施した結果得られた、それぞれの特性変数の値の組み合わせの解集合を出力する。これにより、出力部406は、利用者が、それぞれの特性変数の値の組み合わせの解集合を参照可能にすることができる。このため、出力部406は、利用者が、それぞれの特性変数の値を参照可能にすることができ、いずれかの解を実現可能なモデルのパラメータを参照可能にすることができ、利便性の向上を図ることができる。
ここでは、情報処理装置100が、取得部401と、学習部402と、第1最適化部403と、特定部404と、第2最適化部405と、出力部406とを含む場合について説明したが、これに限らない。例えば、情報処理装置100が、いずれかの機能部を含まない場合があってもよい。具体的には、情報処理装置100が、学習部402を含まない場合があってもよい。この場合、具体的には、情報処理装置100は、学習部402を含む他のコンピュータから、モデルを受信することにより取得することがある。具体的には、情報処理装置100が、第2最適化部405を含まない場合があってもよい。この場合、具体的には、情報処理装置100は、第2最適化部405を含む他のコンピュータと協働する。
(情報処理装置100の動作例1)
次に、図5~図23を用いて、情報処理装置100の動作例1について説明する。
図5~図23は、情報処理装置100の動作例1を示す説明図である。図5は、具体的には、動作例1における情報処理装置100の動作の流れを示す。図5において、情報処理装置100は、複数の学習データを有する。学習データは、例えば、複数の説明変数の値と、複数の説明変数の値に対応する複数の特性変数の正解の値とを示す。
(5-1)情報処理装置100は、複数の学習データに基づいて、それぞれの特性変数について、ガウス過程回帰モデルを学習する。ガウス過程回帰モデルは、例えば、特性変数の値に対応する平均μを算出可能にするf(x)である。
ガウス過程回帰モデルは、例えば、さらに、特性変数の値の不安定さを示し、特性変数の値の信頼性を示す指標値に対応する偏差δを算出可能にする。偏差δは、例えば、標準偏差である。偏差δは、信頼性が高いほど値が小さくなる性質を有する。平均μと、偏差δと、学習データとの関係については、例えば、グラフ501に示す。
(5-2)情報処理装置100は、それぞれの特性変数について、第1の多目的最適化を実施することにより、当該特性変数の値と当該特性変数の値の偏差との組み合わせのパレート解集合を生成する。特性変数の値は、例えば、ガウス過程回帰モデルにより予測される。特性変数の値の偏差は、例えば、ガウス過程回帰モデルにより算出される。
ここで、特性変数の値は、小さい方が、利用者にとって好ましいとする。このため、第1の多目的最適化は、例えば、特性変数の値を最小化する目的関数と、当該特性変数の値の偏差を最小化する目的関数とを用いて実施される。
情報処理装置100は、特性変数の値の偏差に代わり、学習データに含まれる特性変数の値から、モデルにより予測される特性変数の値への距離に基づく、特性変数の値の信頼性を示す指標値を利用する場合があってもよい。情報処理装置100は、例えば、それぞれの特性変数について、グラフ502に示すパレート解集合を生成する。グラフ502の各点が、例えば、パレート解を示す。
情報処理装置100は、それぞれの特性変数について、生成したグラフ502に示すパレート解集合を、利用者が参照可能に出力した後、いずれかの特性変数の値の指定を受け付ける。利用者は、例えば、グラフ502に示すパレート解集合を参照して、いずれかの特性変数の値を指定する。
情報処理装置100は、それぞれの特性変数について、特性変数が指定の値になるパレート解における偏差を、当該特性変数についての偏差閾値に設定する。情報処理装置100は、例えば、i番目の特性変数について、特性変数が指定の値になるパレート解における偏差を、i番目の特性変数についての偏差閾値δiに設定する。
(5-3)情報処理装置100は、複数の特性変数の全体について、第2の多目的最適化を実施することにより、それぞれの特性変数の値の組み合わせのパレート解集合を生成する。それぞれの特性変数の値は、例えば、ガウス過程回帰モデルにより予測される。
情報処理装置100は、例えば、それぞれの特性変数について、特定した偏差閾値に基づくペナルティ項を含む、当該特性変数の値を最適化する目的関数を設定する。情報処理装置100は、具体的には、i番目の特性変数について、特定した偏差閾値δiに基づくペナルティ項を含む、i番目の特性変数を最適化する目的関数を設定する。
ペナルティ項は、例えば、ガウス過程回帰モデルにより予測されるi番目の特性変数の値の偏差が、特定した偏差閾値δiより小さい場合、0となる。ペナルティ項は、例えば、ガウス過程回帰モデルにより予測されるi番目の特性変数の値の偏差が、特定した偏差閾値δi以上である場合、当該値を含むパレート解の候補が淘汰され易くなるよう、正の値となる。正の値は、例えば、特定した偏差閾値δiに基づく可変値である。正の値は、例えば、固定値であってもよい。情報処理装置100は、例えば、設定した目的関数を用いて、第2の多目的最適化を実施することにより、グラフ503に示すパレート解集合を生成する。グラフ503の各点が、例えば、パレート解を示す。
情報処理装置100は、それぞれの特性変数の値の組み合わせのパレート解集合において、いずれかの特性変数の値が、目標値以上である場合、当該いずれかの特性変数についての偏差閾値を設定し直し、第2の多目的最適化を再度実施してもよい。情報処理装置100は、例えば、i番目の特性変数の値が、目標値以上である場合、i番目の特性変数についての偏差閾値δiを、δi+tに設定し直し、第2の多目的最適化を再度実施する。
これにより、情報処理装置100は、それぞれの特性変数の値を最適化することができる。情報処理装置100は、例えば、ガウス過程回帰モデルの信頼性を考慮した第2の多目的最適化を実施することができる。このため、情報処理装置100は、例えば、それぞれの特性変数の値を精度よく最適化することができ、それぞれの特性変数の値の組み合わせのパレート解集合を精度よく求めることができる。次に、図6~図23の説明に移行する。
具体的には、図6~図23は、情報処理装置100の動作例1を示す。図6において、多目的最適化問題の一例として、混合物最適化問題が考えられる。混合物最適化問題は、物質1~nの組成比xiを変化させ、特性y1(x)および特性y2(x)を最小化する多目的最適化問題である。ここで、i=1,2,・・・,nである。Σii=1である。組成比xiは、説明変数に対応する。特性y1(x)の値y1は、目的変数となる特性変数の予測値に対応する。特性y2(x)の値y2は、目的変数となる特性変数の予測値に対応する。混合物最適化問題は、下記式(1)および下記式(2)に示す目的関数で定義される。
1(x)=y1(x)→min ・・・(1)
2(x)=y2(x)→min ・・・(2)
ここで、例えば、特性y1(x)を、下記式(3)で定義する。例えば、特性y2(x)を、下記式(4)で定義する。
1(x)={Σi=1 nαi(xi-pi22 ・・・(3)
2(x)={Σi=1 nβi(xi-qi22 ・・・(4)
ここで、αi≧0である。βi≧0である。以下の説明では、α1~α20は、具体的には、表600に示す値とする。p1~p20は、具体的には、表600に示す値とする。β1~β20は、具体的には、表600に示す値とする。q1~q20は、具体的には、表600に示す値とする。次に、図7の説明に移行する。
図7において、情報処理装置100は、30個の学習データを生成する。情報処理装置100は、例えば、ランダムに2~5個の成分を混合した説明変数の値の組み合わせパターンを30個生成する。そして、情報処理装置100は、例えば、生成した組み合わせパターンごとに、当該組み合わせパターンと、上記式(3)および上記式(4)に基づいて算出した特性値y1,y2とを対応付けた学習データを生成する。図7の例では、情報処理装置100は、表700に示す30個の学習データを生成したとする。表700の1行が、1個の学習データに対応する。次に、図8および図9の説明に移行する。
図8および図9において、情報処理装置100は、30個の学習データに基づいて、特性値y1,y2のそれぞれに対応するガウス過程回帰モデルを生成する。情報処理装置100は、例えば、パラメータをMatern5/2に設定し、特性値y1に対応するガウス過程回帰モデルとして、図8のグラフ800に示すy1モデルを生成する。例えば、グラフ800の横軸は、説明変数の値である。例えば、グラフ800の縦軸は、特性値y1である。
情報処理装置100は、例えば、パラメータをMatern5/2に設定し、特性値y2に対応するガウス過程回帰モデルとして、図9のグラフ900に示すy2モデルを生成する。例えば、グラフ900の横軸は、説明変数の値である。例えば、グラフ900の縦軸は、特性値y2である。次に、図10の説明に移行する。
図10において、情報処理装置100は、y1モデルに基づいて、下記式(5)に示す特性値y1の予測値μ1(x)を最適化する目的関数と、下記式(6)に示す偏差δ1(x)を最適化する目的関数とを用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ1000に示すパレート解集合を生成する。グラフ1000は、散布図である。グラフ1000の各点は、パレート解を示す。グラフ1000の横軸は、予測値μ1(x)であり、グラフ1000の縦軸は、偏差δ1(x)である。
1(x)=μ1(x)→min ・・・(5)
2(x)=δ1(x)→min ・・・(6)
情報処理装置100は、グラフ1000に示すパレート解集合を、利用者が参照可能に出力する。情報処理装置100は、利用者の操作入力に基づき、特性値y1の目標値2.65の指定を受け付け、グラフ1000に示すパレート解集合における、指定の目標値2.65に対応する偏差δ1(x)を特定し、偏差閾値δ1に設定する。次に、図11の説明に移行し、グラフ1000に示すパレート解集合に含まれるパレート解の一例について説明する。
図11の多次元チャート1100に示すように、パレート解は、予測値μ1(x)であるpred valueと、偏差δ1(x)であるstdとの組み合わせを含む。パレート解は、さらに、予測値μ1(x)=pred valueであり、かつ、偏差δ1(x)=stdである場合における説明変数x1~x20の値を含む。次に、図12の説明に移行する。
図12において、情報処理装置100は、y2モデルに基づいて、下記式(7)に示す特性値y2の予測値μ2(x)を最適化する目的関数と、下記式(8)に示す偏差δ2(x)を最適化する目的関数とを用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ1200に示すパレート解集合を生成する。グラフ1200は、散布図である。グラフ1200の各点は、パレート解を示す。グラフ1200の横軸は、予測値μ2(x)であり、グラフ1200の縦軸は、偏差δ2(x)である。
1(x)=μ2(x)→min ・・・(7)
2(x)=δ2(x)→min ・・・(8)
情報処理装置100は、グラフ1200に示すパレート解集合を、利用者が参照可能に出力する。情報処理装置100は、利用者の操作入力に基づき、特性値y2の目標値5.0の指定を受け付け、グラフ1200に示すパレート解集合における、指定の目標値5.0に対応する偏差δ2(x)を特定し、偏差閾値δ2に設定する。次に、図13の説明に移行する。
図13において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、下記式(9)に示す特性値y1の予測値μ1(x)を最適化する目的関数と、下記式(10)に示す特性値y2の予測値μ2(x)を最適化する目的関数とを設定する。
1(x)=μ1(x)→min ・・・(9)
2(x)=μ2(x)→min ・・・(10)
情報処理装置100は、多目的最適化における個体評価にあたり、設定された偏差閾値δjより、個体の特性値の偏差σjが大きい場合、偏差制約違反と判断し、Fjにペナルティを加える。個体とは、パレート解の候補である。
情報処理装置100は、例えば、上記式(9)および上記式(10)に、ペナルティ項を追加し、下記式(11)および下記式(12)を設定する。Piは、σi>δiであれば、σi+Ciであり、σi>δiでなければ、0である。Ciは、例えば、固定値である。Ciは、例えば、学習データにおける特性値yiの絶対値の最大値である。αは、例えば、1である。
1(x)=μ1(x)+αΣi=1 Nyi→min ・・・(11)
2(x)=μ2(x)+αΣi=1 Nyi→min ・・・(12)
情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(11)および上記式(12)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ1300に示すパレート解集合を生成する。グラフ1300は、散布図である。グラフ1300の各点は、パレート解を示す。グラフ1300の横軸は、予測値μ1(x)であり、グラフ1300の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、y1モデルおよびy2モデルの信頼性を考慮して、パレート解集合を精度よく生成し易くすることができる。次に、図14の説明に移行し、グラフ1300に示すパレート解集合に含まれるパレート解の一例について説明する。
図14の多次元チャート1400に示すように、パレート解は、予測値μ1(x)であるF1と、予測値μ2(x)であるF2との組み合わせを含む。パレート解は、さらに、F1の偏差δ1(x)であるF1_stdと、F2の偏差δ2(x)であるF2_stdとの組み合わせを含む。パレート解は、さらに、予測値μ1(x)=F1であり、かつ、予測値μ2(x)=F2である場合における説明変数x1~x20の値を含む。次に、図15の説明に移行する。
図15において、情報処理装置100は、表1501に示すように、特性値y1の目標値2.65と、特性値y2の目標値5.00とを読み出す。情報処理装置100は、表1501に示すように、グラフ1300に示すパレート解集合における、特性値y1の最小値3.73と、特性値y2の最小値5.23とを特定する。
情報処理装置100は、特性値y1の最小値3.73が、特性値y1の目標値2.65以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y1の最小値3.73が、特性値y1の目標値2.65より大きいため、特性値y1の最小化が不足していると判断し、表1502に示すように、偏差閾値δ1をδ1+tに設定し直す。tは、ステップサイズである。tは、例えば、0.05である。
情報処理装置100は、特性値y2の最小値5.23が、特性値y2の目標値5.00以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y2の最小値5.23が、特性値y2の目標値5.00より大きいため、特性値y2の最小化が不足していると判断し、表1502に示すように、偏差閾値δ2をδ2+tに設定し直す。次に、図16の説明に移行する。
図16において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(11)および上記式(12)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ1600に示すパレート解集合を生成する。グラフ1600は、散布図である。グラフ1600の各点は、パレート解を示す。グラフ1600の横軸は、予測値μ1(x)であり、グラフ1600の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、偏差閾値δ1および偏差閾値δ2などを更新した上で、パレート解集合をより精度よく生成し直すことができる。次に、図17の説明に移行する。
図17において、情報処理装置100は、表1701に示すように、特性値y1の目標値2.65と、特性値y2の目標値5.00とを読み出す。情報処理装置100は、表1701に示すように、グラフ1600に示すパレート解集合における、特性値y1の最小値3.19と、特性値y2の最小値5.14とを特定する。
情報処理装置100は、特性値y1の最小値3.19が、特性値y1の目標値2.65以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y1の最小値3.19が、特性値y1の目標値2.65より大きいため、特性値y1の最小化が不足していると判断し、表1702に示すように、偏差閾値δ1をδ1+tに設定し直す。
情報処理装置100は、特性値y2の最小値5.14が、特性値y2の目標値5.00以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y2の最小値5.14が、特性値y2の目標値5.00より大きいため、特性値y2の最小化が不足していると判断し、表1702に示すように、偏差閾値δ2をδ2+tに設定し直す。次に、図18の説明に移行する。
図18において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(11)および上記式(12)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ1800に示すパレート解集合を生成する。グラフ1800は、散布図である。グラフ1800の各点は、パレート解を示す。グラフ1800の横軸は、予測値μ1(x)であり、グラフ1800の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、偏差閾値δ1および偏差閾値δ2などを更新した上で、パレート解集合をより精度よく生成し直すことができる。次に、図19の説明に移行する。
図19において、情報処理装置100は、表1901に示すように、特性値y1の目標値2.65と、特性値y2の目標値5.00とを読み出す。情報処理装置100は、表1901に示すように、グラフ1800に示すパレート解集合における、特性値y1の最小値2.56と、特性値y2の最小値5.03とを特定する。
情報処理装置100は、特性値y1の最小値2.56が、特性値y1の目標値2.65以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y1の最小値2.56が、特性値y1の目標値2.65以下であるため、利用者の要望程度に特性値y1が最小化されたと判断し、偏差閾値δ1を更新しない。
情報処理装置100は、特性値y2の最小値5.03が、特性値y2の目標値5.00以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y2の最小値5.03が、特性値y2の目標値5.00より大きいため、特性値y2の最小化が不足していると判断し、表1902に示すように、偏差閾値δ2をδ2+tに設定し直す。次に、図20の説明に移行する。
図20において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(11)および上記式(12)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ2000に示すパレート解集合を生成する。グラフ2000は、散布図である。グラフ2000の各点は、パレート解を示す。グラフ2000の横軸は、予測値μ1(x)であり、グラフ2000の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、偏差閾値δ1および偏差閾値δ2などを更新した上で、パレート解集合をより精度よく生成し直すことができる。次に、図21の説明に移行する。
図21において、情報処理装置100は、表2101に示すように、特性値y1の目標値2.65と、特性値y2の目標値5.00とを読み出す。情報処理装置100は、表2101に示すように、グラフ2000に示すパレート解集合における、特性値y1の最小値2.57と、特性値y2の最小値4.94とを特定する。
情報処理装置100は、特性値y1の最小値2.57が、特性値y1の目標値2.65以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y1の最小値2.57が、特性値y1の目標値2.65以下であるため、利用者の要望に沿う程度に特性値y1が最小化されたと判断し、偏差閾値δ1を更新しない。
情報処理装置100は、特性値y2の最小値4.94が、特性値y2の目標値5.00以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y2の最小値4.94が、特性値y2の目標値5.00以下であるため、利用者の要望に沿う程度に特性値y2が最小化されたと判断し、偏差閾値δ2を更新しない。
情報処理装置100は、偏差閾値δ1および偏差閾値δ2を更新せずに済ませたため、多目的最適化を繰り返さず、処理を終了する。これにより、情報処理装置100は、特性値y1および特性値y2が、目標値を満たすよう、パレート解集合を精度よく生成することができる。このため、情報処理装置100は、利用者の要望に沿ったパレート解集合を生成することができる。次に、図22の説明に移行する。
図22において、従来技術により求められたパレート解集合の一例を、グラフ2200に示す。グラフ2200は、散布図である。グラフ2200の各点は、パレート解を示す。グラフ2200の横軸は、予測値μ1(x)であり、グラフ2200の縦軸は、予測値μ2(x)である。次に、図23の説明に移行する。
図23において、表2300に示すように、従来技術により求められた、グラフ2200に示すパレート解集合では、特性値y1の相対誤差率Ey1 maxは、11.20であり、特性値y2の相対誤差率Ey2 maxは、7.49である。一方で、情報処理装置100により求められた、グラフ2000に示すパレート解集合では、特性値y1の相対誤差率Ey1 maxは、10.41であり、特性値y2の相対誤差率Ey2 maxは、5.52である。このように、情報処理装置100は、従来技術に比べて、パレート解集合を精度よく生成することができる。
ここでは、情報処理装置100が、偏差閾値を比較的小さい値に設定し、特性値y1および特性値y2がそれぞれ目標値以下になるまで、偏差閾値を大きな値に更新しながら第2の多目的最適化を繰り返し実施する場合について説明したが、これに限らない。例えば、情報処理装置100が、偏差閾値を比較的大きい値に設定し、特性値y1および特性値y2がそれぞれ目標値を超えるまで、偏差閾値を小さな値に更新しながら第2の多目的最適化を繰り返し実施する場合があってもよい。この場合、情報処理装置100は、特性値y1および特性値y2がそれぞれ目標値を超えた直前の第2の多目的最適化の結果を、最終的な結果として採用することが考えられる。
(動作例1における設定処理手順)
次に、図24を用いて、情報処理装置100が実行する、動作例1における設定処理手順の一例について説明する。設定処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
図24は、動作例1における設定処理手順の一例を示すフローチャートである。図24において、情報処理装置100は、i=1を設定する(ステップS2401)。
次に、情報処理装置100は、i番目の特性値に対してガウス過程回帰モデルを生成する(ステップS2402)。そして、情報処理装置100は、生成したガウス過程回帰モデルを用いて、予測値と偏差との多目的最適化を実施する(ステップS2403)。
次に、情報処理装置100は、パレート解集合のいずれかのパレート解の選択を受け付ける(ステップS2404)。そして、情報処理装置100は、選択されたパレート解における偏差を、偏差閾値δiに設定する(ステップS2405)。
次に、情報処理装置100は、i<Nyであるか否かを判定する(ステップS2406)。Nyは、特徴値の種類数である。ここで、i<Nyである場合(ステップS2406:Yes)、情報処理装置100は、i=i+1に設定し(ステップS2407)、ステップS2402の処理に戻る。一方で、i<Nyではない場合(ステップS2406:No)、情報処理装置100は、設定処理を終了する。
(動作例1における求解処理手順)
次に、図25を用いて、情報処理装置100が実行する、動作例1における求解処理手順の一例について説明する。求解処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
図25は、動作例1における求解処理手順の一例を示すフローチャートである。図25において、情報処理装置100は、それぞれパレート解候補を示す1以上の初期個体を生成し、個体群に設定する(ステップS2501)。そして、情報処理装置100は、ガウス過程回帰モデルを用いて、それぞれの初期個体における特徴値ごとの偏差を評価する(ステップS2502)。
次に、情報処理装置100は、個体群の中から、親個体を選択する(ステップS2503)。そして、情報処理装置100は、選択した親個体から子個体を生成し、個体群に追加する(ステップS2504)。
次に、情報処理装置100は、突然変異の個体を生成し、個体群に追加する(ステップS2505)。そして、情報処理装置100は、ガウス過程回帰モデルを用いて、個体群のそれぞれの個体における特徴値ごとの偏差を評価する(ステップS2506)。
次に、情報処理装置100は、個体群のうち、偏差閾値δiより小さい偏差を有する特徴値を含む個体が存在するか否かを判定する(ステップS2507)。ここで、偏差閾値δiより小さい偏差を有する特徴値を含む個体が存在しない場合(ステップS2507:No)、情報処理装置100は、ステップS2509の処理に移行する。一方で、偏差閾値δiより小さい偏差を有する特徴値を含む個体が存在する場合(ステップS2507:Yes)、情報処理装置100は、ステップS2508の処理に移行する。
ステップS2508では、情報処理装置100は、個体群のうち、偏差閾値δiより小さい偏差を有する特徴値を含む個体に対してペナルティを付与する(ステップS2508)。次に、情報処理装置100は、個体群に含まれる個体を淘汰し、個体群から取り除く(ステップS2509)。
そして、情報処理装置100は、世代数上限に到達したか否かを判定する(ステップS2510)。ここで、世代数上限に到達していない場合(ステップS2510:No)、情報処理装置100は、ステップS2503の処理に戻る。一方で、世代数上限に到達している場合(ステップS2510:Yes)、情報処理装置100は、求解処理を終了する。
(動作例1における更新処理手順)
次に、図26を用いて、情報処理装置100が実行する、動作例1における更新処理手順の一例について説明する。更新処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
図26は、動作例1における更新処理手順の一例を示すフローチャートである。図26において、情報処理装置100は、求解処理による多目的最適化結果を取得する(ステップS2601)。
次に、情報処理装置100は、取得した多目的最適化結果に基づいて、μi min<yi sであるか否かを判定する(ステップS2602)。μi minは、多目的最適化結果におけるi番目の特性値の最小値である。yi sは、選択されたパレート解におけるi番目の特性値である。
ここで、μi min<yi sではない場合(ステップS2602:No)、情報処理装置100は、δi=δi+tに更新し(ステップS2603)、ステップS2601の処理に戻る。一方で、μi min<yi sである場合(ステップS2602:Yes)、情報処理装置100は、更新処理を終了する。
(情報処理装置100の動作例2)
次に、図27~図32を用いて、情報処理装置100の動作例2について説明する。動作例1は、偏差閾値δiを、値が大きくなるよう更新する処理を含む場合についての動作例である。これに対し、動作例2は、偏差閾値δiを、値が大きくなるよう更新する処理の他、偏差閾値δiを、値が小さくなるよう更新する処理を含む場合についての動作例である。
図27~図32は、情報処理装置100の動作例2を示す説明図である。図27~図32において、動作例1と同様に、混合物最適化問題を解く場合について説明する。情報処理装置100は、動作例1と同様に、学習データに基づいて、特性値y1に対応するガウス過程回帰モデルとして、y1モデルを生成したとする。情報処理装置100は、動作例1と同様に、特性値y2に対応するガウス過程回帰モデルとして、y2モデルを生成したとする。
情報処理装置100は、動作例1と同様に、特性値y1の目標値2.65の指定を受け付け、グラフ1000に示すパレート解集合における、指定の目標値2.65に対応する偏差δ1(x)を特定し、偏差閾値δ1に設定したとする。情報処理装置100は、動作例1と同様に、特性値y2の目標値5.0の指定を受け付け、グラフ1200に示すパレート解集合における、指定の目標値5.0に対応する偏差δ2(x)を特定し、偏差閾値δ2に設定したとする。情報処理装置100は、動作例1と同様に、上記式(11)および上記式(12)を設定する。次に、図27の説明に移行する。
図27において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(11)および上記式(12)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ2700に示すパレート解集合を生成する。グラフ2700は、散布図である。グラフ2700の各点は、パレート解を示す。グラフ2700の横軸は、予測値μ1(x)であり、グラフ2700の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、y1モデルおよびy2モデルの信頼性を考慮して、パレート解集合を精度よく生成し易くすることができる。次に、図28の説明に移行する。
図28において、情報処理装置100は、表2801に示すように、特性値y1の目標値2.65と、特性値y2の目標値5.00とを読み出す。情報処理装置100は、表2801に示すように、グラフ2700に示すパレート解集合における、特性値y1の最小値3.73と、特性値y2の最小値5.23とを特定する。
情報処理装置100は、特性値y1の最小値3.73が、特性値y1の目標値2.65以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y1の最小値3.73が、特性値y1の目標値2.65より大きいため、特性値y1の最小化が不足していると判断し、表2802に示すように、偏差閾値δ1をδ1+tに設定し直す。tは、ステップサイズである。tは、例えば、0.2である。
情報処理装置100は、特性値y2の最小値5.23が、特性値y2の目標値5.00以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y2の最小値5.23が、特性値y2の目標値5.00より大きいため、特性値y2の最小化が不足していると判断し、表2802に示すように、偏差閾値δ2をδ2+tに設定し直す。次に、図29の説明に移行する。
図29において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(11)および上記式(12)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ2900に示すパレート解集合を生成する。グラフ2900は、散布図である。グラフ2900の各点は、パレート解を示す。グラフ2900の横軸は、予測値μ1(x)であり、グラフ2900の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、偏差閾値δ1および偏差閾値δ2などを更新した上で、パレート解集合をより精度よく生成し直すことができる。次に、図30の説明に移行する。
図30において、情報処理装置100は、表3001に示すように、特性値y1の目標値2.65と、特性値y2の目標値5.00とを読み出す。情報処理装置100は、表3001に示すように、グラフ2900に示すパレート解集合における、特性値y1の最小値2.50と、特性値y2の最小値4.72とを特定する。
情報処理装置100は、特性値y1の最小値2.50が、特性値y1の目標値2.65以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y1の最小値2.50が、特性値y1の目標値2.65以下であるため、利用者の要望程度に特性値y1が最小化されたと判断する。情報処理装置100は、さらに、特性値y1の最小値2.50が、特性値y1の目標値2.65以下の許容範囲内であるか否かを判定する。許容範囲の長さは、例えば、0.15である。
情報処理装置100は、例えば、特性値y1の最小値2.50が、特性値y1の目標値2.65-0.15より大きいか否かを判定する。情報処理装置100は、例えば、特性値y1の最小値2.50が、特性値y1の目標値2.65-0.15=2.50より大きくないため、探索空間が広すぎると判断し、表3002に示すように、偏差閾値δ1をδ1-t’に設定し直す。例えば、t’=1/4tである。
情報処理装置100は、特性値y2の最小値4.72が、特性値y2の目標値5.00以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y2の最小値4.72が、特性値y2の目標値5.00以下であるため、利用者の要望に沿う程度に特性値y2が最小化されたと判断する。情報処理装置100は、さらに、特性値y2の最小値4.72が、特性値y2の目標値5.00以下の許容範囲内であるか否かを判定する。
情報処理装置100は、例えば、特性値y2の最小値4.72が、特性値y2の目標値5.00-0.15より大きいか否かを判定する。情報処理装置100は、例えば、特性値y2の最小値4.72が、特性値y2の目標値5.00-0.15=4.85より大きくないため、探索空間が広すぎると判断し、表3002に示すように、偏差閾値δ2をδ2-t’に設定し直す。次に、図31の説明に移行する。
図31において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(11)および上記式(12)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ3100に示すパレート解集合を生成する。グラフ3100は、散布図である。グラフ3100の各点は、パレート解を示す。グラフ3100の横軸は、予測値μ1(x)であり、グラフ3100の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、偏差閾値δ1および偏差閾値δ2などを更新した上で、パレート解集合をより精度よく生成し直すことができる。情報処理装置100は、例えば、探索範囲を適切に狭めた上で、パレート解集合をより精度よく生成し直すことができる。次に、図32の説明に移行する。
図32において、情報処理装置100は、表3201に示すように、特性値y1の目標値2.65と、特性値y2の目標値5.00とを読み出す。情報処理装置100は、表3201に示すように、グラフ2000に示すパレート解集合における、特性値y1の最小値2.52と、特性値y2の最小値4.86とを特定する。
情報処理装置100は、特性値y1の最小値2.52が、特性値y1の目標値2.65以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y1の最小値2.52が、特性値y1の目標値2.65以下であるため、利用者の要望に沿う程度に特性値y1が最小化されたと判断する。情報処理装置100は、さらに、特性値y1の最小値2.52が、特性値y1の目標値2.65以下の許容範囲内であるか否かを判定する。
情報処理装置100は、例えば、特性値y1の最小値2.52が、特性値y1の目標値2.65-0.15より大きいか否かを判定する。情報処理装置100は、例えば、特性値y1の最小値2.52が、特性値y1の目標値2.65-0.15=2.50より大きいため、偏差閾値δ1を更新しない。
情報処理装置100は、特性値y2の最小値4.86が、特性値y2の目標値5.00以下であるか否かを判定する。ここでは、情報処理装置100は、特性値y2の最小値4.86が、特性値y2の目標値5.00以下であるため、利用者の要望に沿う程度に特性値y2が最小化されたと判断する。情報処理装置100は、さらに、特性値y2の最小値4.86が、特性値y2の目標値5.00以下の許容範囲内であるか否かを判定する。
情報処理装置100は、例えば、特性値y2の最小値4.86が、特性値y2の目標値5.00-0.15より大きいか否かを判定する。情報処理装置100は、例えば、特性値y2の最小値4.86が、特性値y2の目標値5.00-0.15=4.85より大きいため、偏差閾値δ2を更新しない。
情報処理装置100は、偏差閾値δ1および偏差閾値δ2を更新せずに済ませたため、多目的最適化を繰り返さず、処理を終了する。これにより、情報処理装置100は、特性値y1および特性値y2が、目標値を満たすよう、パレート解集合を精度よく生成することができる。このため、情報処理装置100は、利用者の要望に沿ったパレート解集合を生成することができる。
(動作例2における設定処理手順)
動作例2における設定処理手順の一例は、図24に示した動作例1における設定処理手順の一例と同様であるため、説明を省略する。
(動作例2における求解処理手順)
動作例2における求解処理手順の一例は、図25に示した動作例1における求解処理手順の一例と同様であるため、説明を省略する。
(動作例2における更新処理手順)
次に、図33を用いて、情報処理装置100が実行する、動作例2における更新処理手順の一例について説明する。更新処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
図33は、動作例2における更新処理手順の一例を示すフローチャートである。図33において、情報処理装置100は、求解処理による多目的最適化結果を取得する(ステップS3301)。
次に、情報処理装置100は、μi min<yi sであるか否かを判定する(ステップS3302)。ここで、μi min<yi sではない場合(ステップS3302:No)、情報処理装置100は、δi=δi+tに更新し(ステップS3303)、ステップS3301の処理に戻る。一方で、μi min<yi sである場合(ステップS3302:Yes)、情報処理装置100は、ステップS3304の処理に移行する。
ステップS3304では、情報処理装置100は、μi min>yi s-εiであるか否かを判定する(ステップS3304)。εiは、例えば、0.15である。ここで、μi min>yi s-εiである場合(ステップS3304:Yes)、情報処理装置100は、更新処理を終了する。一方で、μi min>yi s-εiではない場合(ステップS3304:No)、情報処理装置100は、ステップS3305の処理に移行する。
ステップS3305では、情報処理装置100は、ti=βtiに更新する(ステップS3305)。βは、例えば、1/4である。tiの初期値は、例えば、0.2である。次に、情報処理装置100は、δi=δi-tiに更新する(ステップS3306)。そして、情報処理装置100は、ステップS3301の処理に戻る。
(情報処理装置100の動作例3)
次に、図34~図38を用いて、情報処理装置100の動作例3について説明する。動作例1および動作例2は、偏差が比較的小さく信頼性が比較的高い特性値についてパレート解を探索し易くする場合に対応する動作例である。これに対し、動作例3は、偏差が比較的大きく信頼性が比較的低い特性値についてパレート解を探索してみるようにする場合に対応する動作例である。
図34~図38は、情報処理装置100の動作例3を示す説明図である。具体的には、図34は、動作例3における情報処理装置100の動作の流れを示す。図34において、情報処理装置100は、複数の学習データを有する。学習データは、例えば、複数の説明変数の値と、複数の説明変数の値に対応する複数の特性変数の正解の値とを示す。
(34-1)情報処理装置100は、複数の学習データに基づいて、それぞれの特性変数について、ガウス過程回帰モデルを学習する。ガウス過程回帰モデルは、例えば、特性変数の値に対応する平均μを算出可能にするf(x)である。
ガウス過程回帰モデルは、例えば、さらに、特性変数の値の不安定さを示し、特性変数の値の信頼性を示す指標値に対応する偏差δを算出可能にする。偏差δは、例えば、標準偏差である。偏差δは、信頼性が高いほど値が小さくなる性質を有する。偏差δは、例えば、探索度に対応する。平均μと、偏差δと、学習データとの関係については、例えば、グラフ3401に示す。
(34-2)情報処理装置100は、それぞれの特性変数について、第1の多目的最適化を実施することにより、当該特性変数の値と当該特性変数の値の偏差との組み合わせのパレート解集合を生成する。特性変数の値は、例えば、ガウス過程回帰モデルにより予測される。特性変数の値の偏差は、例えば、ガウス過程回帰モデルにより算出される。
ここで、特性変数の値は、小さい方が、利用者にとって好ましいとする。このため、第1の多目的最適化は、例えば、特性変数の値を最小化する目的関数と、当該特性変数の値の偏差を最大化する目的関数とを用いて実施される。第1の多目的最適化は、特性変数の値の偏差を最大化する目的関数を用いることにより、偏差が比較的大きく信頼性が比較的低く、学習データが比較的少なかったと考えられる特性値についてパレート解を探索し易くすることができる。
情報処理装置100は、特性変数の値の偏差に代わり、学習データに含まれる特性変数の値から、モデルにより予測される特性変数の値への距離に基づく、特性変数の値の信頼性を示す指標値を利用する場合があってもよい。情報処理装置100は、例えば、それぞれの特性変数について、グラフ3402に示すパレート解集合を生成する。グラフ3402の各点が、例えば、パレート解を示す。
情報処理装置100は、それぞれの特性変数について、生成したグラフ3402に示すパレート解集合を、利用者が参照可能に出力した後、いずれかの特性変数の値の指定を受け付ける。利用者は、例えば、グラフ3402に示すパレート解集合を参照して、いずれかの特性変数の値を指定する。
情報処理装置100は、それぞれの特性変数について、特性変数が指定の値になるパレート解における偏差を、当該特性変数についての偏差閾値に設定する。情報処理装置100は、例えば、i番目の特性変数について、特性変数が指定の値になるパレート解における偏差を、i番目の特性変数についての偏差閾値δiに設定する。
(34-3)情報処理装置100は、複数の特性変数の全体について、第2の多目的最適化を実施することにより、それぞれの特性変数の値の組み合わせのパレート解集合を生成する。それぞれの特性変数の値は、例えば、ガウス過程回帰モデルにより予測される。
情報処理装置100は、例えば、それぞれの特性変数について、特定した偏差閾値に基づくペナルティ項を含む、当該特性変数の値を最適化する目的関数を設定する。情報処理装置100は、具体的には、i番目の特性変数について、特定した偏差閾値δiに基づくペナルティ項を含む、i番目の特性変数を最適化する目的関数を設定する。
ペナルティ項は、例えば、ガウス過程回帰モデルにより予測されるi番目の特性変数の値の偏差が、特定した偏差閾値δi以上である場合、0となる。ペナルティ項は、例えば、ガウス過程回帰モデルにより予測されるi番目の特性変数の値の偏差が、特定した偏差閾値δiより小さい場合、当該値を含むパレート解の候補が淘汰され易くなるよう、正の値となる。正の値は、例えば、特定した偏差閾値δiに基づく可変値である。正の値は、例えば、固定値であってもよい。情報処理装置100は、例えば、設定した目的関数を用いて、第2の多目的最適化を実施することにより、グラフ3403に示すパレート解集合を生成する。グラフ3403の各点が、例えば、パレート解を示す。
これにより、情報処理装置100は、それぞれの特性変数の値を最適化することができる。情報処理装置100は、例えば、ガウス過程回帰モデルの信頼性を考慮し、探索度を考慮した第2の多目的最適化を実施することができ、それぞれの特性変数の値の組み合わせの様々なパレート解集合を求めることができる。このため、情報処理装置100は、利便性の向上を図ることができる。次に、図35~図38の説明に移行する。
具体的には、図35~図38は、情報処理装置100の動作例3を示す。図35~図38において、動作例1と同様に、混合物最適化問題を解く場合について説明する。図35において、情報処理装置100は、動作例1と同様に、学習データに基づいて、特性値y1に対応するガウス過程回帰モデルとして、y1モデルを生成したとする。情報処理装置100は、動作例1と同様に、特性値y2に対応するガウス過程回帰モデルとして、y2モデルを生成したとする。
図35において、情報処理装置100は、y1モデルに基づいて、下記式(13)に示す特性値y1の予測値μ1(x)を最適化する目的関数と、下記式(14)に示す偏差δ1(x)を最適化する目的関数とを用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ3500に示すパレート解集合を生成する。グラフ3500は、散布図である。グラフ3500の各点は、パレート解を示す。グラフ3500の横軸は、予測値μ1(x)であり、グラフ3500の縦軸は、偏差δ1(x)である。
1(x)=μ1(x)→min ・・・(13)
2(x)=δ1(x)→max ・・・(14)
情報処理装置100は、グラフ3500に示すパレート解集合を、利用者が参照可能に出力する。情報処理装置100は、利用者の操作入力に基づき、特性値y1の目標値3.8の指定を受け付け、グラフ3500に示すパレート解集合における、指定の目標値3.8に対応する偏差δ1(x)を特定し、偏差閾値δ1に設定する。次に、図36の説明に移行する。
図36において、情報処理装置100は、y2モデルに基づいて、下記式(15)に示す特性値y2の予測値μ2(x)を最適化する目的関数と、下記式(16)に示す偏差δ2(x)を最適化する目的関数とを用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ3600に示すパレート解集合を生成する。グラフ3600は、散布図である。グラフ3600の各点は、パレート解を示す。グラフ3600の横軸は、予測値μ2(x)であり、グラフ3600の縦軸は、偏差δ2(x)である。
1(x)=μ2(x)→min ・・・(15)
2(x)=δ2(x)→max ・・・(16)
情報処理装置100は、グラフ3600に示すパレート解集合を、利用者が参照可能に出力する。情報処理装置100は、利用者の操作入力に基づき、特性値y2の目標値5.4の指定を受け付け、グラフ3600に示すパレート解集合における、指定の目標値5.4に対応する偏差δ2(x)を特定し、偏差閾値δ2に設定する。次に、図37の説明に移行する。
図37において、情報処理装置100は、y1モデルおよびy2モデルに基づいて、下記式(17)に示す特性値y1の予測値μ1(x)を最適化する目的関数と、下記式(18)に示す特性値y2の予測値μ2(x)を最適化する目的関数とを設定する。
1(x)=μ1(x)→min ・・・(17)
2(x)=μ2(x)→min ・・・(18)
情報処理装置100は、多目的最適化における個体評価にあたり、設定された偏差閾値δjより、個体の特性値の偏差σjが小さい場合、偏差制約違反と判断し、Fjにペナルティを加える。個体とは、パレート解の候補である。
情報処理装置100は、例えば、上記式(17)および上記式(18)に、ペナルティ項を追加し、下記式(19)および下記式(20)を設定する。Piは、σi<δiであれば、(σi-δi2+Ciであり、σi<δiでなければ、0である。Ciは、例えば、固定値である。Ciは、例えば、学習データにおける特性値yiの絶対値の最大値である。αは、例えば、10である。
1(x)=μ1(x)+αΣi=1 Nyi→min ・・・(19)
2(x)=μ2(x)+αΣi=1 Nyi→min ・・・(20)
情報処理装置100は、y1モデルおよびy2モデルに基づいて、上記式(19)および上記式(20)に示す目的関数を用いて、多目的最適化を実施する。情報処理装置100は、多目的最適化を実施した結果、グラフ3700に示すパレート解集合を生成する。グラフ3700は、散布図である。グラフ3700の各点は、パレート解を示す。グラフ3700の横軸は、予測値μ1(x)であり、グラフ3700の縦軸は、予測値μ2(x)である。
これにより、情報処理装置100は、y1モデルおよびy2モデルの信頼性を考慮し、探索度を考慮したそれぞれの特性変数の値の組み合わせの様々なパレート解集合を求めることができる。次に、図38の説明に移行する。
図38において、情報処理装置100は、表3800に示すように、予測値μ1(x)の偏差の最小値σ1と、予測値μ2(x)の偏差の最小値σ2とを、探索度の目安として特定する。情報処理装置100は、パレート解集合を示すグラフ3700と、探索度の目安となる偏差を示す表3800とを、利用者が参照可能に出力する。これにより、情報処理装置100は、パレート解集合を可視化し、利用者が所望のパレート解を選択し易くすることができる。
(動作例3における設定処理手順)
動作例3における設定処理手順の一例は、図24に示した動作例1における設定処理手順の一例と同様であるため、説明を省略する。
(動作例3における求解処理手順)
次に、図39を用いて、情報処理装置100が実行する、動作例3における求解処理手順の一例について説明する。求解処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
図39は、動作例3における求解処理手順の一例を示すフローチャートである。図39において、情報処理装置100は、それぞれパレート解候補を示す1以上の初期個体を生成し、個体群に設定する(ステップS3901)。そして、情報処理装置100は、ガウス過程回帰モデルを用いて、それぞれの初期個体における特徴値ごとの偏差を評価する(ステップS3902)。
次に、情報処理装置100は、個体群の中から、親個体を選択する(ステップS3903)。そして、情報処理装置100は、選択した親個体から子個体を生成し、個体群に追加する(ステップS3904)。
次に、情報処理装置100は、突然変異の個体を生成し、個体群に追加する(ステップS3905)。そして、情報処理装置100は、ガウス過程回帰モデルを用いて、個体群のそれぞれの個体における特徴値ごとの偏差を評価する(ステップS3906)。
次に、情報処理装置100は、個体群のうち、偏差閾値δiより大きい偏差を有する特徴値を含む個体が存在するか否かを判定する(ステップS3907)。ここで、偏差閾値δiより大きい偏差を有する特徴値を含む個体が存在する場合(ステップS3907:Yes)、情報処理装置100は、ステップS3908の処理に移行する。一方で、偏差閾値δiより大きい偏差を有する特徴値を含む個体が存在しない場合(ステップS3907:No)、情報処理装置100は、ステップS3909の処理に移行する。
ステップS3908では、情報処理装置100は、個体群のうち、偏差閾値δiより大きい偏差を有する特徴値を含む個体に対してペナルティを付与する(ステップS3908)。そして、情報処理装置100は、ステップS3909の処理に移行する。
ステップS3909では、情報処理装置100は、個体群に含まれる個体を淘汰し、個体群から取り除く(ステップS3909)。次に、情報処理装置100は、世代数上限に到達したか否かを判定する(ステップS3910)。ここで、世代数上限に到達していない場合(ステップS3910:No)、情報処理装置100は、ステップS3903の処理に戻る。一方で、世代数上限に到達している場合(ステップS3910:Yes)、情報処理装置100は、求解処理を終了する。
(単目的最適化の一例)
次に、図40を用いて、目的変数となる特性変数が1種類である場合における単目的最適化の一例について説明する。
図40は、単目的最適化の一例を示す説明図である。図40において、(40-1)情報処理装置100は、動作例1と同様に、複数の学習データに基づいて、1つの特性変数について、グラフ4001に示すガウス過程回帰モデルを学習する。
そして、情報処理装置100は、動作例1と同様に、偏差の最小化を図りつつ1つの特性変数の特性値を最適化してもよいし、動作例3と同様に、偏差の最大化を図りつつ1つの特性変数の特性値を最適化してもよい。偏差の最小化を図りつつ1つの特性変数の特性値を最適化する場合については、(40-2-1)に後述する。偏差の最大化を図りつつ1つの特性変数の特性値を最適化する場合については、(40-2-2)に後述する。
(40-2-1)情報処理装置100は、1つの特性変数について、当該特性変数の値を最適化する目的関数と、当該特性変数の値の偏差を最小化する目的関数とを用いて多目的最適化を実施する。特性変数の値は、例えば、ガウス過程回帰モデルにより予測される。特性変数の値の偏差は、例えば、ガウス過程回帰モデルにより算出される。これにより、情報処理装置100は、1つの特性変数の値と当該特性変数の値の偏差との組み合わせのパレート解集合を生成することができる。
情報処理装置100は、生成したパレート解集合を示すグラフ4002を、利用者が参照可能に出力する。これにより、情報処理装置100は、パレート解集合を可視化することができる。そして、情報処理装置100は、利用者が、グラフ4002に示すパレート解集合のうち、所望のパレート解を選択し易くすることができる。
(40-2-2)情報処理装置100は、1つの特性変数について、当該特性変数の値を最適化する目的関数と、当該特性変数の値の偏差を最大化する目的関数とを用いて多目的最適化を実施する。特性変数の値は、例えば、ガウス過程回帰モデルにより予測される。特性変数の値の偏差は、例えば、ガウス過程回帰モデルにより算出される。これにより、情報処理装置100は、1つの特性変数の値と当該特性変数の値の偏差との組み合わせのパレート解集合を生成することができる。
情報処理装置100は、生成したパレート解集合を示すグラフ4003を、利用者が参照可能に出力する。これにより、情報処理装置100は、パレート解集合を可視化することができる。そして、情報処理装置100は、利用者が、グラフ4003に示すパレート解集合のうち、所望のパレート解を選択し易くすることができる。
以上説明したように、情報処理装置100によれば、それぞれの特性変数について、当該特性変数の値を最適化する目的関数と、当該値の信頼性を示す指標値を最適化する目的関数とを用いて第1の多目的最適化を実施することができる。情報処理装置100によれば、それぞれの特性変数について、第1の多目的最適化を実施することにより、当該特性変数の値と当該特性変数の値の信頼性を示す指標値との組み合わせの解集合を生成することができる。情報処理装置100によれば、それぞれの特性変数について、生成した解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定することができる。情報処理装置100によれば、特定した指標値に基づくペナルティ項を含む、モデルにより予測されるそれぞれの特性変数の値を最適化する目的関数を用いて第2の多目的最適化を実施することができる。情報処理装置100によれば、第2の多目的最適化を実施することにより、それぞれの特性変数の値の組み合わせの解集合を生成することができる。これにより、情報処理装置100は、モデルの信頼性を考慮した第2の多目的最適化を実施することができ、それぞれの特性変数の値を精度よく最適化することができ、解集合を精度よく求めることができる。
情報処理装置100によれば、複数の学習データに基づいて、それぞれの特性変数について、当該特性変数の値を予測可能、かつ、当該値の信頼性を示す指標値を算出可能にするガウス過程回帰モデルを学習することができる。情報処理装置100によれば、それぞれの特性変数について、学習したガウス過程回帰モデルにより予測される当該特性変数の値を最適化する目的関数を設定することができる。情報処理装置100によれば、それぞれの特性変数について、学習したガウス過程回帰モデルにより算出される当該値の信頼性を示す指標値を最適化する目的関数を設定することができる。これにより、情報処理装置100は、モデルを用意する際に利用者にかかる作業負担の低減化を図ることができ、特性変数の値の信頼性を示す指標値を算出可能にすることができる。
情報処理装置100によれば、モデルにより予測されるそれぞれの特性変数の値の信頼性を示す指標値を、複数の学習データのそれぞれの学習データから当該値への距離に基づいて算出することができる。これにより、情報処理装置100は、モデルを用いずとも、特性変数の値の信頼性を示す指標値を算出可能にすることができる。
情報処理装置100によれば、生成したそれぞれの特性変数の値の組み合わせの解集合において、複数の特性変数のいずれかの特性変数の値が、目標値を満たすか否かを判定することができる。情報処理装置100によれば、いずれかの特性変数の値が、目標値を満たさない場合、いずれかの特性変数について、直前に特定した指標値とは異なる新たな指標値を特定することができる。情報処理装置100によれば、特定した新たな指標値に基づくペナルティ項を含む、モデルにより予測されるそれぞれの特性変数の値を最適化する目的関数を用いて第2の多目的最適化を実施することができる。これにより、情報処理装置100は、第2の多目的最適化を繰り返し、解集合をさらに精度よく求めることができる。
情報処理装置100によれば、信頼性を示す指標値として、信頼性が低いほど、値が大きくなる指標値を利用することができる。情報処理装置100によれば、信頼性を示す指標値を最適化する目的関数として、信頼性を示す指標値を最小化する目的関数を利用することができる。情報処理装置100によれば、いずれかの特性変数の値が、目標値を満たさない場合、いずれかの特性変数について、直前に特定した指標値より第1の値だけ大きい新たな指標値を特定することができる。これにより、情報処理装置100は、解集合をさらに精度よく求めるために、より適切な指標値を特定することができる。
情報処理装置100によれば、いずれかの特性変数の値が、目標値を満たし、目標値を基準とした範囲に含まれない場合、いずれかの特性変数について、直前に特定した指標値より第1の値とは異なる第2の値だけ小さい新たな指標値を特定することができる。これにより、情報処理装置100は、解集合をさらに精度よく求めるために、より適切な指標値を特定することができる。
情報処理装置100によれば、信頼性を示す指標値として、信頼性が低いほど、値が大きくなる指標値を利用することができる。情報処理装置100によれば、信頼性を示す指標値を最適化する目的関数として、信頼性を示す指標値を最大化する目的関数を利用することができる。情報処理装置100によれば、いずれかの特性変数の値が、目標値を満たさない場合、いずれかの特性変数について、直前に特定した指標値より第1の値だけ小さい新たな指標値を特定することができる。これにより、情報処理装置100は、解集合をさらに精度よく求めるために、より適切な指標値を特定することができる。
情報処理装置100によれば、いずれかの特性変数の値が、目標値を満たし、かつ、目標値を基準とした範囲に含まれない場合、いずれかの特性変数について、直前に特定した指標値より第1の値とは異なる第2の値だけ大きい新たな指標値を特定することができる。これにより、情報処理装置100は、解集合をさらに精度よく求めるために、より適切な指標値を特定することができる。
情報処理装置100によれば、目標値を、指定の値に基づき設定することができる。これにより、情報処理装置100は、利用者が所望の解を求め易くすることができる。
情報処理装置100によれば、いずれかの特性変数の値の信頼性を示す指標値が、特定した指標値より信頼性が低いことを示す値である場合、当該特性変数の値を最適化する目的関数にペナルティ項を含めることができる。これにより、情報処理装置100は、第2の多目的最適化を実施するにあたり、モデルの信頼性を考慮可能にすることができる。
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをPCやワークステーションなどのコンピュータで実行することにより実現することができる。本実施の形態で説明した情報処理プログラムは、コンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。記録媒体は、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto Optical disc)、DVD(Digital Versatile Disc)などである。また、本実施の形態で説明した情報処理プログラムは、インターネットなどのネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)複数の特性変数のそれぞれについて、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成し、
前記複数の特性変数のそれぞれについて、生成した前記解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定し、
特定した前記指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
処理をコンピュータに実行させることを特徴とする情報処理プログラム。
(付記2)複数の学習データに基づいて、前記複数の特性変数のそれぞれについて、当該特性変数の値を予測可能、かつ、当該値の信頼性を示す指標値を算出可能にするガウス過程回帰モデルを学習する、
処理を前記コンピュータに実行させ、
前記第1の多目的最適化を実施する処理は、
前記複数の特性変数のそれぞれについて、学習した前記ガウス過程回帰モデルにより予測される当該特性変数の値を探索するための前記第1目的関数と、学習した前記ガウス過程回帰モデルにより算出される当該値の信頼性を示す指標値を探索するための前記第2目的関数とを用いて前記第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成する、ことを特徴とする付記1に記載の情報処理プログラム。
(付記3)前記モデルにより予測される前記複数の特性変数のそれぞれの値の信頼性を示す指標値は、複数の学習データのそれぞれの学習データから当該値への距離に基づいて算出される、ことを特徴とする付記1に記載の情報処理プログラム。
(付記4)生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、目標値を満たさない場合、前記いずれかの特性変数について、直前に特定した前記指標値とは異なる新たな指標値を特定し、
特定した前記新たな指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
処理を前記コンピュータに実行させることを特徴とする付記1~3のいずれか一つに記載の情報処理プログラム。
(付記5)前記信頼性を示す指標値は、前記信頼性が低いほど、値が大きくなる指標値であって、
前記信頼性を示す指標値を探索するための前記第2目的関数は、前記信頼性を示す指標値を最小化するための目的関数であって、
前記新たな指標値を特定する処理は、
生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たさない場合、前記いずれかの特性変数について、直前に特定した前記指標値より第1の値だけ大きい新たな指標値を特定する、ことを特徴とする付記4に記載の情報処理プログラム。
(付記6)前記新たな指標値を特定する処理は、
生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たし、前記目標値を基準とした範囲に含まれない場合、前記いずれかの特性変数について、直前に特定した前記指標値より前記第1の値とは異なる第2の値だけ小さい新たな指標値を特定する、ことを特徴とする付記5に記載の情報処理プログラム。
(付記7)前記信頼性を示す指標値は、前記信頼性が低いほど、値が大きくなる指標値であって、
前記信頼性を示す指標値を探索するための前記第2目的関数は、前記信頼性を示す指標値を最大化するための目的関数であって、
前記新たな指標値を特定する処理は、
生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たさない場合、前記いずれかの特性変数について、直前に特定した前記指標値より第1の値だけ小さい新たな指標値を特定する、ことを特徴とする付記4に記載の情報処理プログラム。
(付記8)前記新たな指標値を特定する処理は、
生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たし、かつ、前記目標値を基準とした範囲に含まれない場合、前記いずれかの特性変数について、直前に特定した前記指標値より前記第1の値とは異なる第2の値だけ大きい新たな指標値を特定する、ことを特徴とする付記7に記載の情報処理プログラム。
(付記9)前記目標値は、前記指定の値に基づき設定される、ことを特徴とする付記4~8のいずれか一つに記載の情報処理プログラム。
(付記10)前記複数の特性変数のそれぞれの値の組み合わせの解候補における前記複数の特性変数のいずれかの特性変数の値の信頼性を示す指標値が、特定した前記指標値より信頼性が低いことを示す値である場合、当該特性変数の値を探索するための目的関数にペナルティ項を含むよう、前記複数の特性変数のそれぞれの値を探索するための目的関数を設定する、
処理を前記コンピュータに実行させることを特徴とする付記1~9のいずれか一つに記載の情報処理プログラム。
(付記11)1つの特性変数について、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成する、
処理をコンピュータに実行させることを特徴とする情報処理プログラム。
(付記12)複数の特性変数のそれぞれについて、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成し、
前記複数の特性変数のそれぞれについて、生成した前記解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定し、
特定した前記指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
処理をコンピュータが実行することを特徴とする情報処理方法。
(付記13)複数の特性変数のそれぞれについて、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成し、
前記複数の特性変数のそれぞれについて、生成した前記解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定し、
特定した前記指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
制御部を有することを特徴とする情報処理装置。
100 情報処理装置
101 モデル
102,103,501~503,800,900,1000,1200,1300,1600,1800,2000,2200,2700,2900,3100,3401~3403,3500,3600,3700,4001~4003 グラフ
200 情報処理システム
201 クライアント装置
210 ネットワーク
300 バス
301 CPU
302 メモリ
303 ネットワークI/F
304 記録媒体I/F
305 記録媒体
400 記憶部
401 取得部
402 学習部
403 第1最適化部
404 特定部
405 第2最適化部
406 出力部
600,700,1501,1502,1701,1702,1901,1902,2101,2300,2801,2802,3001,3002,3201,3800 表
1100,1400 多次元チャート

Claims (10)

  1. 複数の特性変数のそれぞれについて、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成し、
    前記複数の特性変数のそれぞれについて、生成した前記解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定し、
    特定した前記指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
    処理をコンピュータに実行させることを特徴とする情報処理プログラム。
  2. 複数の学習データに基づいて、前記複数の特性変数のそれぞれについて、当該特性変数の値を予測可能、かつ、当該値の信頼性を示す指標値を算出可能にするガウス過程回帰モデルを学習する、
    処理を前記コンピュータに実行させ、
    前記第1の多目的最適化を実施する処理は、
    前記複数の特性変数のそれぞれについて、学習した前記ガウス過程回帰モデルにより予測される当該特性変数の値を探索するための前記第1目的関数と、学習した前記ガウス過程回帰モデルにより算出される当該値の信頼性を示す指標値を探索するための前記第2目的関数とを用いて前記第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成する、ことを特徴とする請求項1に記載の情報処理プログラム。
  3. 生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、目標値を満たさない場合、前記いずれかの特性変数について、直前に特定した前記指標値とは異なる新たな指標値を特定し、
    特定した前記新たな指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
    処理を前記コンピュータに実行させることを特徴とする請求項1または2に記載の情報処理プログラム。
  4. 前記信頼性を示す指標値は、前記信頼性が低いほど、値が大きくなる指標値であって、
    前記信頼性を示す指標値を探索するための前記第2目的関数は、前記信頼性を示す指標値を最小化するための目的関数であって、
    前記新たな指標値を特定する処理は、
    生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たさない場合、前記いずれかの特性変数について、直前に特定した前記指標値より第1の値だけ大きい新たな指標値を特定する、ことを特徴とする請求項3に記載の情報処理プログラム。
  5. 前記新たな指標値を特定する処理は、
    生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たし、前記目標値を基準とした範囲に含まれない場合、前記いずれかの特性変数について、直前に特定した前記指標値より前記第1の値とは異なる第2の値だけ小さい新たな指標値を特定する、ことを特徴とする請求項4に記載の情報処理プログラム。
  6. 前記信頼性を示す指標値は、前記信頼性が低いほど、値が大きくなる指標値であって、
    前記信頼性を示す指標値を探索するための前記第2目的関数は、前記信頼性を示す指標値を最大化するための目的関数であって、
    前記新たな指標値を特定する処理は、
    生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たさない場合、前記いずれかの特性変数について、直前に特定した前記指標値より第1の値だけ小さい新たな指標値を特定する、ことを特徴とする請求項3に記載の情報処理プログラム。
  7. 前記新たな指標値を特定する処理は、
    生成した前記複数の特性変数のそれぞれの値の組み合わせの解集合において、前記複数の特性変数のいずれかの特性変数の値が、前記目標値を満たし、かつ、前記目標値を基準とした範囲に含まれない場合、前記いずれかの特性変数について、直前に特定した前記指標値より前記第1の値とは異なる第2の値だけ大きい新たな指標値を特定する、ことを特徴とする請求項6に記載の情報処理プログラム。
  8. 前記複数の特性変数のそれぞれの値の組み合わせの解候補における前記複数の特性変数のいずれかの特性変数の値の信頼性を示す指標値が、特定した前記指標値より信頼性が低いことを示す値である場合、当該特性変数の値を探索するための目的関数にペナルティ項を含むよう、前記複数の特性変数のそれぞれの値を探索するための目的関数を設定する、
    処理を前記コンピュータに実行させることを特徴とする請求項1~7のいずれか一つに記載の情報処理プログラム。
  9. 複数の特性変数のそれぞれについて、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成し、
    前記複数の特性変数のそれぞれについて、生成した前記解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定し、
    特定した前記指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
    処理をコンピュータが実行することを特徴とする情報処理方法。
  10. 複数の特性変数のそれぞれについて、モデルにより予測される当該特性変数の値を探索するための第1目的関数と、当該値の信頼性を示す指標値を探索するための第2目的関数とを用いて第1の多目的最適化を実施することにより、当該値と当該指標値との組み合わせの解集合を生成し、
    前記複数の特性変数のそれぞれについて、生成した前記解集合のうち、当該特性変数が指定の値である場合の解となる組み合わせに含まれる指標値を特定し、
    特定した前記指標値に基づくペナルティ項を含む、前記モデルにより予測される前記複数の特性変数のそれぞれの値を探索するための目的関数を用いて第2の多目的最適化を実施することにより、前記複数の特性変数のそれぞれの値の組み合わせの解集合を生成する、
    制御部を有することを特徴とする情報処理装置。
JP2021169065A 2021-10-14 2021-10-14 情報処理プログラム、情報処理方法、および情報処理装置 Pending JP2023059128A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021169065A JP2023059128A (ja) 2021-10-14 2021-10-14 情報処理プログラム、情報処理方法、および情報処理装置
US17/840,670 US20230121368A1 (en) 2021-10-14 2022-06-15 Storage medium, information processing method, and information processing apparatus
EP22179863.0A EP4167146A1 (en) 2021-10-14 2022-06-20 Information processing program, information processing method, and information processing apparatus
CN202210783037.0A CN115982520A (zh) 2021-10-14 2022-07-05 非暂态计算机可读存储介质、信息处理方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021169065A JP2023059128A (ja) 2021-10-14 2021-10-14 情報処理プログラム、情報処理方法、および情報処理装置

Publications (1)

Publication Number Publication Date
JP2023059128A true JP2023059128A (ja) 2023-04-26

Family

ID=82117339

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021169065A Pending JP2023059128A (ja) 2021-10-14 2021-10-14 情報処理プログラム、情報処理方法、および情報処理装置

Country Status (4)

Country Link
US (1) US20230121368A1 (ja)
EP (1) EP4167146A1 (ja)
JP (1) JP2023059128A (ja)
CN (1) CN115982520A (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5176895B2 (ja) 2008-11-18 2013-04-03 富士通株式会社 Sram形状パラメータ等の多目的最適化設計支援装置、方法、及びプログラム
JP2021034168A (ja) 2019-08-21 2021-03-01 株式会社カネカ 製造パラメータの決定方法、機械学習プログラム、及び有機el装置の製造システム

Also Published As

Publication number Publication date
US20230121368A1 (en) 2023-04-20
EP4167146A1 (en) 2023-04-19
CN115982520A (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
Fuhg et al. State-of-the-art and comparative review of adaptive sampling methods for kriging
KR101936029B1 (ko) 딥러닝 기반의 가치 평가 방법 및 그 장치
WO2018205881A1 (en) Estimating the number of samples satisfying a query
KR102295805B1 (ko) 학습 데이터 관리 방법
US11513851B2 (en) Job scheduler, job schedule control method, and storage medium
CN110858062B (zh) 目标优化参数的获取方法及模型训练方法、装置
WO2019200738A1 (zh) 数据特征提取的方法、装置、计算机设备和存储介质
JPWO2013051619A1 (ja) 類似性検出装置及び指向性近傍検出方法
US11556785B2 (en) Generation of expanded training data contributing to machine learning for relationship data
JP2017146888A (ja) 設計支援装置及び方法及びプログラム
CN110807476B (zh) 一种密码安全等级分类方法、装置及电子设备
CN113436223B (zh) 点云数据的分割方法、装置、计算机设备和存储介质
CN108241864A (zh) 基于多变量分组的服务器性能预测方法
JP7367196B2 (ja) レジーム・シフトの識別及び分析のための方法及びシステム
JP2023059128A (ja) 情報処理プログラム、情報処理方法、および情報処理装置
US20230234136A1 (en) Heat-aware toolpath reordering for 3d printing of physical parts
JP7344149B2 (ja) 最適化装置及び最適化方法
TWI778789B (zh) 配方建構系統、配方建構方法、內儲程式之電腦可讀取記錄媒體與非暫時性電腦程式產品
EP4339843A1 (en) Neural network optimization method and apparatus
JP7384999B2 (ja) 機械学習モデル決定システム及び機械学習モデル決定方法
CN112419098B (zh) 基于安全信息熵的电网安全稳定仿真样本筛选扩充方法
US20240177063A1 (en) Information processing apparatus, information processing method, and non-transitory recording medium
KR102392383B1 (ko) 동영상 데이터 전송 방법 및 장치
Lin et al. Towards Dynamic Fuzzy Rule Interpolation with Harmony Search
WO2022158104A1 (ja) 乱数生成器、乱数生成方法、及びプログラムが格納された非一時的なコンピュータ可読媒体