以下,本実施の形態について,図を用いて説明する。本実施の形態では,主に,温度と圧力とを説明変数とした物質の三態を示す相図の生成を例として,説明を行う。
図1は,相図の例を示す図である。
図1に示す相図は,物質の三態を示す相図の例である。図1に示す相図において,横軸の圧力と縦軸の温度は,物質の状態量を示す説明変数である。また,図1に示す相図において,気相,液相,固相は,説明変数の値に応じた相を示す。気相,液相,固相は,それぞれ気体,液体,固体の相を表している。
図1に示す相図は,説明変数が2つである場合の相図の一例である。説明変数が3つ以上の場合にも,各説明変数の値に応じた相を示す相図を生成することができる。
図2は,説明変数が3つ以上である相図の例を示す図である。
図2に示す2つの図は,それぞれ,説明変数が3つである場合の相図の例である。図2(A)は,対散布図の例を示す。図2(B)は,平行座標図の例を示す。図2に示す相図において,a,b,cはそれぞれ説明変数であり,α,β,γはそれぞれ相である。図2に示す対散布図や平行座標図では,説明変数の数がさらに増えても,各説明変数の値と相との関係を表すことができる。
図3は,相図生成の例を説明する図である。
一般に,コンピュータによる相図の生成では,説明変数ごとに等間隔に値をとった格子点が設定される。例えば,図3に示すように,圧力と温度のそれぞれについて,等間隔に値をとって,格子点が設定される。
設定された各格子点について,コンピュータを用いたシミュレーション処理により,相が求められる。例えば,図3に示す物質の三態の相図では,格子点ごとの圧力の値と温度の値とが,コンピュータによって実現されるシミュレータに入力される。シミュレータは,与えられた圧力と温度との条件下で,分子の動きをシミュレーションし,分子間の距離などから,与えられた圧力と温度との条件下における物質の相を判断する。
このようにして求められた格子点ごとの相を示すデータから,図1に示すような相図が生成される。
このような一般の相図生成の一連の流れにおいて,各説明変数の値から相を求めるシミュレーション処理が,最も時間がかかる処理となる。そのため,現実的な時間の範囲内で,相図の生成を終わらせるためには,シミュレーション処理を行う格子点の数を少なくする必要がある。しかし,シミュレーション処理を行う格子点の数を少なくするためには,格子点の間隔を広く設定する必要があり,生成される相図の精度が低くなる。
逆に,生成する相図の精度を高くするためには,格子点の間隔を狭く設定する必要があり,それに応じてシミュレーション処理を行う格子点の数が増える。そのため,相図の生成に時間がかかり,現実的な時間の範囲内で相図の生成を行うことが難しくなる。特に,シミュレーション処理時の計算量は,説明変数の数が増えるのに応じてべき乗で増大するため,説明変数の数が多い場合には,シミュレーション処理を行う格子点の数を増やすことは,現実的に難しい。
以下では,コンピュータによる相図の生成において,限られた時間の中で,十分に精度が高い相図を生成することが可能となる本実施の形態の技術について,説明する。
〔実施の形態1〕
図4は,本実施の形態1による相図生成システムの機能構成例を示す図である。
図4に示す相図生成システム10は,相図を生成するコンピュータシステムである。相図生成システム10は,点設定部11,シミュレーション対象点抽出部12,シミュレーション制御部13,シミュレーション実行部14,予測対象点抽出部15,相予測部16,予測結果判定部17,シミュレーション対象点追加抽出部18,相図生成部19を備える。また,相図生成システム10は,設定点情報記憶部110,シミュレーション対象点情報記憶部120,シミュレーション結果情報記憶部130,予測対象点情報記憶部140,相予測情報記憶部150等の記憶部を備える。
なお,図4に示す相図生成システム10において,各機能部を接続する実線は主に制御の流れを示し,破線は主にデータの流れを示す。
点設定部11は,説明変数の値を組み合わせた複数の点を設定する。点設定部11は,設定した点のデータを,設定点情報記憶部110に記録する。本実施の形態1では,点設定部11は,各説明変数の値をそれぞれ等間隔に組み合わせた複数の格子点を設定するものとする。
設定点情報記憶部110は,設定点情報が記憶された,コンピュータがアクセス可能な記憶部である。設定点情報は,点設定部11が設定した点のデータが記録された情報である。
シミュレーション対象点抽出部12は,設定点情報記憶部110に記憶された設定点情報を参照し,点設定部11が設定した点からのサンプリングにより,シミュレーション対象点を抽出する。シミュレーション対象点は,シミュレーションによって説明変数の値から相を求める対象の点である。シミュレーション対象点抽出部12は,抽出したシミュレーション対象点のデータを,シミュレーション対象点情報記憶部120に記録する。
シミュレーション対象点情報記憶部120は,シミュレーション対象点情報を記憶する,コンピュータがアクセス可能な記憶部である。シミュレーション対象点情報は,シミュレーション対象点抽出部12により抽出されたシミュレーション対象点のデータや,シミュレーション対象点追加抽出部18により追加で抽出されたシミュレーション対象点のデータが記録された情報である。
シミュレーション対象点抽出部12による点設定部11が設定した点からのサンプリングは,単純なランダムサンプリングでもよいし,実験計画法やラテン超方格法を用いたサンプリングでもよい。
実験計画法は,直交表などを用いて,説明変数について均等にサンプリングを行う手法である。実験計画法では,均等であることが優先され,説明変数ごとの値の種類は少なく設定される。実験計画法は,説明変数の変化に対する目的変数の変化が小さい場合に適したサンプリング手法である。
ラテン超法格法は,ラテン方格を応用し,説明変数ごとに均等にサンプリングする方法である。ラテン方格は,n行n列の表に,n個の異なる記号を,各記号が各行,各列に1回だけ現れるように並べたものである。ラテン超方格法では,説明変数ごとの値の種類を多く設定することが優先される。ラテン超方格法は,説明変数の変化に対する目的変数の変化が大きい場合に適したサンプリング手法である。
シミュレーション制御部13は,シミュレーション対象点情報記憶部120に記憶されたシミュレーション対象点情報を参照し,シミュレーション対象点のデータをシミュレーション実行部14に渡す。また,シミュレーション制御部13は,シミュレーション実行部14から,シミュレーション対象点についてのシミュレーション結果を収集する。シミュレーション制御部13は,シミュレーション実行部14から収集したシミュレーション結果のデータを,シミュレーション結果情報記憶部130に記録する。
シミュレーション結果情報記憶部130は,シミュレーション結果情報を記憶する,コンピュータがアクセス可能な記憶部である。シミュレーション結果情報は,シミュレーション制御部13が収集したシミュレーション結果のデータが記録された情報である。
シミュレーション実行部14は,説明変数の値から相を求めるシミュレーションを実行する。例えば,温度の値と圧力の値とから物質の三態を求めるシミュレーションでは,シミュレーション実行部14は,与えられた圧力と温度との条件下で分子の動きをシミュレーションし,分子間の距離などから物質の相を判断する。
なお,温度,圧力などの物性条件に応じた物質の三態を求めるシミュレーションに関連する技術については,次に示す参考文献などでも紹介されている。
〔参考文献1〕「ナノサイズの空隙間の気体・液体・固体の状態変化の基本理論を解明」,http://criepi.denken.or.jp/press/pressrelease/2007/06 _06.pdf
〔参考文献2〕田中 秀樹,「コンピュータでみた水と氷の中の分子の動き」,http://www.city.asakuchi.okayama.jp/museum/lecture/071027tanaka.pdf
参考文献1,2は,温度,圧力などの物性条件に応じた物質の三態の相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
予測対象点抽出部15は,設定点情報記憶部110に記憶された設定点情報と,シミュレーション結果情報記憶部130に記憶されたシミュレーション結果情報とを参照し,予測対象点を抽出する。予測対象点は,相を予測する対象の点である。ここでは,予測対象点抽出部15は,点設定部11が設定した点から,シミュレーション結果が収集された点以外の点を,予測対象点として抽出する。予測対象点抽出部15は,抽出された予測対象点のデータを,予測対象点情報記憶部140に記録する。
予測対象点情報記憶部140は,予測対象点情報を記憶する,コンピュータがアクセス可能な記憶部である。予測対象点情報は,予測対象点抽出部15により抽出された予測対象点のデータが記録された情報である。
相予測部16は,シミュレーション結果情報記憶部130に記憶されたシミュレーション結果情報を参照し,シミュレーション実行部14によるシミュレーション結果を用いた統計解析を行う。得られる統計解析の結果は,説明変数と相との関係の傾向を示す情報となる。相予測部16は,このようなシミュレーション結果の統計解析を,解析パターンを変えて複数回実行し,解析パターンを変えた複数の統計解析の結果を得る。
統計解析の解析パターンとしては,例えば,使用する統計解析法が異なる解析アルゴリズムを用いた複数の解析パターンが考えられる。また,統計解析の解析パターンとしては,同じ統計解析法の解析アルゴリズムでも設定する解析パラメータが異なる複数の解析パターンが考えられる。また,統計解析の解析パターンとしては,シミュレーション結果からの復元抽出により得られた異なるデータを用いた複数の解析パターンが考えられる。また,統計解析の解析パターンとして,異なる統計解析法の解析アルゴリズムと,異なる解析パラメータと,シミュレーション結果からの復元抽出により得られた異なるデータとを組み合わせた,多数の解析パターンが考えられる。
使用する統計解析法としては,例えば,決定木解析,ルール解析,SVM(Support vector machine:サポートベクトルマシン)解析,ランダムフォレスト解析など,様々な解析方法が考えられる。
相予測部16は,予測対象点情報記憶部140に記憶された予測対象情報を参照し,予測対象点ごとに,複数の異なる解析パターンによる複数の統計結果を利用して,複数回の相の予測を行う。これにより,相予測部16は,予測対象点ごとに,相の予測結果を複数取得することになる。相予測部16は,得られた予測対象点ごとの相の複数の予測結果のデータを,相予測情報記憶部150に記録する。
相予測情報記憶部150は,相予測情報を記憶する,コンピュータがアクセス可能な記憶部である。相予測情報は,相予測部16により取得された予測対象点ごとの相の複数の予測結果のデータが記録された情報である。
予測結果判定部17は,相予測情報記憶部150に記憶された相予測情報を参照し,予測対象点ごとに,相の複数の予測結果がすべて一致するかを判定する。また,予測結果判定部17は,すべての予測対象点について相の複数の予測結果が一致しているかを判定する。
シミュレーション対象点追加抽出部18は,相の複数の予測結果が一致しない予測対象点がある場合に,相予測情報記憶部150に記憶された相予測情報を参照し,予測対象点から相の複数の予測結果が一致しない点を抽出する。シミュレーション対象点追加抽出部18は,抽出された予測対象点のデータを,さらに追加でシミュレーションを実行するシミュレーション対象点のデータとして,シミュレーション対象点情報記憶部120に記録する。
なお,シミュレーション対象点追加抽出部18が,相の複数の予測結果が一致しない予測対象点を,すべてシミュレーション対象点とするのではなく,所定数の点を選択して,シミュレーション対象点としてもよい。
例えば,相予測部16が,10個の解析パターンによる統計解析の結果を用いて,相の予測を行ったものとする。このとき,ある予測対象点Aについて,相が液体であると予測した解析パターンが9個であり,相が気体であると予測した解析パターンが1個であったものとする。また,別の予測対象点Bについて,相が液体であると予測した解析パターンが5個であり,相が気体であると予測した解析パターンが5個であったものとする。
予測対象点Aと,予測対象点Bは,ともに相の複数の予測結果が一致しない予測対象点である。ただし,予測対象点Aについては,相が液体である可能性が非常に高いのに対し,予測対象点Bについては,相が液体である可能性と相が気体である可能性とが五分五分である。
このような場合に,シミュレーション対象点とする予測対象点の数を限定し,より予測が曖昧な予測対象点Bを優先的にシミュレーション対象点とすることで,精度をほとんど下げずに,シミュレーションを実行する点を減らすことができる。より予測が確からしい予測対象点Aについては,シミュレーションを実行しなくても,より予測が曖昧な予測対象点Bのシミュレーション結果が加わるだけで,相の複数の予測結果が一致しない予測対象点となる可能性が高い。
このようなケースでは,シミュレーション対象点追加抽出部18は,予測対象点から相の複数の予測結果が一致しない点を抽出し,抽出された各点について,相の予測結果ごとに,その結果を予測した解析パターンの数を集計する。シミュレーション対象点追加抽出部18は,抽出された点のうち,相の予測結果ごとに集計した解析パターンの数の最大が小さいものから順に所定数の点を,シミュレーション対象点とする。
シミュレーション実行部14は,追加された新たなシミュレーション対象点について,シミュレーションを実行する。シミュレーション制御部13は,新たなシミュレーション対象点についての新たなシミュレーション結果を取得し,取得された新たなシミュレーション結果をシミュレーション結果情報記憶部130に追加で記録する。予測対象点抽出部15は,新たなシミュレーション結果の追加に応じて,新たな予測対象点を抽出する。相予測部16は,新たなシミュレーション結果を用いて統計解析を行い,新たな予測対象点についての相の予測を行う。シミュレーション対象点追加抽出部18は,相の複数の予測結果が一致しない点を抽出し,次の追加のシミュレーション対象点とする。相図生成システム10は,これらの処理を,相の複数の予測結果が一致しない点がなくなるまで,繰り返し実行する。
相図生成部19は,すべての予測対象点で相の複数の予測結果が一致する場合に,シミュレーション結果情報記憶部130に記憶されたシミュレーション結果情報を参照し,シミュレーション結果に基づいて相図を生成する。
図5は,本実施の形態による相図生成システムのシステム構成例を示す図である。
図4に示す相図生成システム10は,1台のコンピュータによって実現されてもよいし,複数のコンピュータによって実現されてもよい。
上述したように,コンピュータによる相図の生成において,最も時間がかかるのは,説明変数の値から相を求めるシミュレーションである。このような負荷が高いシミュレーションを時間的に効率よく実行するためには,複数の格子点についての並列処理が有効である。
例えば,負荷が高い処理でも並列処理が可能なマルチプロセッサやマルチコアプロセッサを搭載する大型のコンピュータを用いて,相図生成システム10を実現してもよい。
また,例えば,コンピュータクラスタ,グリッドコンピューティング,クラウドコンピューティングなどの,図5に示す複数のコンピュータを用いたシステムで,図4に示す相図生成システム10を実現してもよい。図5の例に示す相図生成システム10を実現するコンピュータシステムは,相図生成装置10−1と,複数のシミュレーション実行装置10−2とを有する。
図5に示すコンピュータシステムにおいて,相図生成装置10−1は,例えば,相図生成システム10の作業管理者が操作する,図4に示す相図生成システム10におけるすべての機能部を備えるコンピュータである。図5に示すコンピュータシステムにおいて,各シミュレーション実行装置10−2は,例えば,図4に示す相図生成システム10におけるシミュレーション実行部14を備えるコンピュータである。
相図生成装置10−1において,シミュレーション制御部13は,各格子点における相を求めるシミュレーションを,各シミュレーション実行装置10−2に割り当てる。相図生成装置10−1のシミュレーション制御部13は,割り当てた格子点についての各説明変数の値を,割り当て先のシミュレーション実行装置10−2のシミュレーション実行部14に送る。
シミュレーション実行装置10−2のシミュレーション実行部14は,相図生成装置10−1のシミュレーション制御部13から受け取った各説明変数の値に応じた相を求めるシミュレーションを実行する。シミュレーション実行装置10−2のシミュレーション実行部14は,相図生成装置10−1のシミュレーション制御部13に,シミュレーション結果を送る。ここでは,シミュレーション結果として,各説明変数の値に応じて求められた相のデータが送られる。
相図生成装置10−1のシミュレーション制御部13は,各シミュレーション実行装置10−2のシミュレーション実行部14から,シミュレーション結果を収集し,収集したシミュレーション結果をシミュレーション結果情報記憶部130に記録する。
図6は,本実施の形態による相図生成システムを実現するハードウェアの構成例を示す図である。
図4に示す本実施の形態の相図生成システム10は,例えば,CPU(Central Processing Unit )2,主記憶となるメモリ3,記憶装置4,通信装置5,媒体読取・書込装置6,入力装置7,出力装置8等を備えるコンピュータ1によって実現される。記憶装置4は,例えばHDD(Hard Disk Drive )などである。媒体読取・書込装置6は,例えばCD−R(Compact Disc Recordable )ドライブやDVD−R(Digital Versatile Disc Recordable )ドライブなどである。入力装置7は,例えばキーボードやマウスなどである。出力装置8は,例えばディスプレイなどである。
図4に示す相図生成システム10および相図生成システム10が備える各機能部は,コンピュータ1が備えるCPU2,メモリ3等のハードウェアと,ソフトウェアプログラムとによって実現することが可能である。コンピュータ1が実行可能なプログラムは,記憶装置4に記憶され,その実行時にメモリ3に読み出され,CPU2により実行される。
コンピュータ1は,可搬型記録媒体から直接プログラムを読み取り,そのプログラムに従った処理を実行することもできる。また,コンピュータ1は,サーバコンピュータからプログラムが転送されるごとに,逐次,受け取ったプログラムに従った処理を実行することもできる。さらに,このプログラムは,コンピュータ1で読み取り可能な記録媒体に記録しておくことができる。
図6に示すコンピュータ1のハードウェア構成は,図5に示すようなコンピュータシステムにおける相図生成装置10−1,各シミュレーション実行装置10−2についても同様である。
図7,図8は,本実施の形態1による相図の生成過程の一例を説明する図である。
ここでは,圧力と温度の説明変数と物質の三態の相との関係を示す相図の生成を例に,相図の生成過程の一例を説明する。なお,図7,図8において,太点線が,最終的に相図生成の結果として得られる,各相間の境界を示している。
相図生成システム10において,点設定部11は,圧力の値と温度の値とをそれぞれ等間隔に組み合わせた格子点を設定する。図7,図8において,菱形の点が,点設定部11により設定された格子点を示す。
シミュレーション対象点抽出部12は,設定された格子点からのサンプリングにより,シミュレーション対象点を抽出する。このとき,サンプリング手法として実験計画法やラテン超方格法などを用いると,各説明変数について均等なサンプリングができる。図7,図8において,黒く塗りつぶされた菱形の点が,サンプリングにより抽出されたシミュレーション対象点である。
シミュレーション実行部14は,シミュレーション対象点となった格子点について,相を求めるシミュレーションを実行する。シミュレーション制御部13は,各シミュレーション対象点についてのシミュレーション結果を収集する。
予測対象点抽出部15は,点設定部11により設定された格子点から予測対象点を抽出する。予測対象点として抽出される格子点は,点設定部11により設定された格子点において,シミュレーション結果がない格子点である。図7,図8において,白抜きの菱形の点が,予測対象点である。
この時点で,サンプリングによるシミュレーション対象点と,予測対象点との関係は,例えば図7に示す通りとなる。
相予測部16は,シミュレーション結果を用いて,解析パターンを変えた複数の統計解析を行う。相予測部16は,各予測対象点について,解析パラメータを変えた複数の統計解析結果を利用して,複数回の相の予測を行う。予測結果判定部17は,各予測対象点について,相の複数の予測結果がすべて一致しているかを判定する。
シミュレーション対象点追加抽出部18は,予測対象点のうち,相の複数の予測結果が一致していない格子点を,追加のシミュレーション対象点とする。図8において,ハッチングされた菱形の点が,追加されたシミュレーション対象点である。
相と相との境界に近い格子点ほど,解析パターンの違いによる相の予測結果のばらつきが発生しやすく,相と相との境界から離れた格子点ほど,解析パターンが違っても相の予測結果のばらつきが発生しない。そのため,追加されるシミュレーション対象点は,図8に示すように,相と相との境界に近い所に集中する。
シミュレーション実行部14は,追加でシミュレーション対象点となった格子点について,相を求めるシミュレーションを実行する。予測対象点抽出部15は,点設定部11により設定された格子点において,シミュレーション結果がない格子点を,新たな予測対象点として抽出する。
相予測部16は,データが追加された新たなシミュレーション結果を用いた統計解析の結果を利用して,新たな各予測対象点についての相の予測を行う。
この時点で,サンプリングによるシミュレーション対象点と,追加のシミュレーション対象点と,予測対象点との関係は,例えば図8に示す通りとなる。
このような処理を繰り返すことにより,最終的には,信頼性が高い相の推定が難しい相と相との境界に近い格子点については,確実な相の結果が得られるシミュレーションが実行される。また,信頼性が高い相の推定が容易な相と相との境界から離れた格子点については,無駄なシミュレーションが行われない。
最終的に,相の複数の予測結果が一致していない格子点がなくなった時点で,相図生成部19は,シミュレーション結果に基づいた相図の生成を行う。相図生成のもととなるシミュレーション結果は,相と相との境界に近い格子点に集中したものとなる。
このように,本実施の形態1による相図生成システム10では,相と相との境界に近い格子点について,集中的にシミュレーションを実行することができるので,設定する格子点の間隔をある程度狭く設定しても,相図生成処理の実行時間が急激に増大することはない。そのため,本実施の形態1の相図生成システム10によって,限られた時間の中で,十分に精度が高い相図を生成することが可能となる。
図9は,本実施の形態1の設定点情報記憶部が記憶する設定点情報の一例を示す図である。
図9に示す設定点データ115は,設定点情報記憶部110が記憶する設定点情報の一例である。設定点情報記憶部110が記憶する設定点情報には,各説明変数の値を組み合わせた点のデータが記録される。図9に示す設定点データ115には,圧力の値a1 ,a2 ,... と,温度の値b1 ,b2 ,... とが組み合わされた格子点のデータが記録されている。
図10は,本実施の形態1のシミュレーション対象点情報記憶部が記憶するシミュレーション対象点情報の一例を示す図である。
図10に示すシミュレーション対象点データ125は,シミュレーション対象点情報記憶部120が記憶するシミュレーション対象点情報の一例である。シミュレーション対象点情報記憶部120が記憶するシミュレーション対象点情報には,シミュレーション対象点について,各説明変数の値のデータが記録されている。
図10に示すシミュレーション対象点データ125には,特に,図9に示す設定点データ115にデータが記録された格子点からサンプリングにより抽出されたシミュレーション対象点について,圧力の値と温度の値とが記録されている。
図11は,本実施の形態1のシミュレーション結果情報記憶部が記憶するシミュレーション結果情報の一例を示す図である。
図11に示すシミュレーション結果データ135は,シミュレーション結果情報記憶部130が記憶するシミュレーション結果情報の一例である。シミュレーション結果情報記憶部130が記憶するシミュレーション結果情報には,シミュレーションを実行した点についての各説明変数の値のデータと,シミュレーションで求めた相のデータとが記録される。
図11に示すシミュレーション結果データ135は,図10に示すシミュレーション対象点データ125にデータが記録された格子点についての圧力の値と温度の値とともに,シミュレーションにより求められた相として,物質の三態が記録されている。
図12は,本実施の形態1の予測対象点情報記憶部が記憶する予測対象点情報の一例を示す図である。
図12に示す予測対象点データ145は,予測対象点情報記憶部140が記憶する予測対象点情報の一例である。予測対象点情報記憶部140が記憶する予測対象点情報には,各予測対象点について,各説明変数の値のデータが記録されている。
図12に示す予測対象点データ145には,図9に示す設定点データ115にデータが記録された格子点のうち,図11に示すシミュレーション結果データ135にデータの記録がない格子点について,圧力の値と温度の値とが記録されている。
図13は,本実施の形態1の相予測情報記憶部が記憶する相予測情報の一例を示す図である。
図13に示す相予測データ155は,相予測情報記憶部150が記憶する相予測情報の一例である。相予測情報記憶部150が記憶する相予測情報には,各予測対象点について,各説明変数の値のデータと,解析パターンごとの相の予測結果とが記録されている。
図13に示す相予測データ155には,図12に示す予測対象点データ145にデータが記録された格子点についての圧力の値と温度の値とともに,各解析パターンの統計解析の結果から予測された相(物質の三態)が記録されている。図13に示す相予測データ155において,圧力の値がa10で温度の値がb12である格子点では,解析パターン#1による相予測と,解析パターン#2による相予測とで,予測された相が異なっている。
図14は,本実施の形態1のシミュレーション対象点情報記憶部が記憶するシミュレーション対象点情報の一例を示す図である。
図14に示すシミュレーション対象点データ125’は,図10に示すシミュレーション対象点データ125と同様に,シミュレーション対象点情報記憶部120が記憶するシミュレーション対象点情報の一例である。
ただし,図14に示すシミュレーション対象点データ125’には,シミュレーション対象点のデータとして,図13に示す相予測データ155において相の複数の予測結果が一致していない格子点について,圧力の値と温度の値とが記録されている。
ここで,シミュレーション結果の統計解析に使用する統計解析法の例をいくつか紹介する。ここでは,統計解析法の例として,決定木解析,ルール解析,SVM解析,ランダムフォレスト解析について,簡単に説明する。
決定木解析は,説明変数のデータと目的変数のデータとを入力し,木構造で,説明変数をもとに目的変数を予測する統計解析法である。本実施の形態では,目的変数は,相のカテゴリ値である。
図15は,本実施の形態による決定木解析を説明する図である。
例えば,100個の格子点について圧力の値と温度の値とからシミュレーションにより相を求めた,100件のシミュレーション結果があるものとする。
決定木解析では,図15に示すように,説明変数である圧力の値や温度の値の条件を設定して,100件のシミュレーション結果を木構造で分類する。図15に示す決定木において,楕円で表された節点に示された圧力の値や温度の値の条件を満たすか否かで,シミュレーション結果が徐々に細かく分類される。
最下層の矩形で表された葉に示された件数が,シミュレーション結果が分類された結果である。ルートから葉に至るまでの節点の条件の組合せが,その葉の分類についての説明変数の条件となる。決定木の葉の部分では,その葉に分類されたシミュレーション結果における相の多数決がとられ,多数決の結果が,ルートから葉に至るまでの節点の条件の組合せで分類した相の統計結果とされる。
例えば,図15において,温度が閾値Th01より高く,かつ圧力が閾値Th02より高いという条件を満たすシミュレーション結果は,20件となっている。これらの20件のシミュレーション結果について,シミュレーションで求められた相は,気体が6件,液体が14件である。多数決により,温度が閾値Th01より高く,かつ圧力が閾値Th02より高いという条件を満たす格子点については,液体の相に分類されるという統計解析の結果が得られる。
予測対象点について,相の予測を行う場合には,決定木において,予測対象点における圧力の値と温度の値とが満たす条件を辿り,分類先となる葉の探索を行う。予測対象点の分類先の葉における統計解析の結果の相が,その予測対象点における相の予測結果となる。例えば,図15に示す決定木において,温度が閾値Th01より高く,かつ圧力が閾値Th02より高い予測対象点については,相の予測結果が液体となる。
決定木解析において,設定変更可能な解析パラメータとしては,例えば,詳細さのパラメータや評価指標のパラメータなどがある。詳細さは,決定木における分類の細かさを示すパラメータである。詳細さのパラメータの例としては,cp,minsplit,minbasket などがある。評価指標は,決定木の節点の条件を決める評価基準を示すパラメータである。評価指標のパラメータの例としては,gini,information などがある。
なお,決定木解析の技術については,次に示す参考文献などでも紹介されている。
〔参考文献3〕金 明哲,「フリーソフトによるデータ解析・マイニング 第18回 Rと樹木モデル(1)」,http://mjin.doshisha.ac.jp/R/0501 _18.pdf
〔参考文献4〕金 明哲,「フリーソフトによるデータ解析・マイニング 第19回 Rと樹木モデル(2)」,http://mjin.doshisha.ac.jp/R/0502 _19.pdf
参考文献3,参考文献4は,決定木解析の技術が紹介された文献の一例である。
ルール解析は,説明変数のデータと目的変数のデータとを入力し,IF−THENルールで,説明変数をもとに目的変数を予測する統計解析法である。本実施の形態では,目的変数は,相のカテゴリ値である。ルール解析は,上述の決定木解析と類似する統計解析法であり,木構造の代わりにIF−THENの形式で記述されるルールを用いて,統計解析の結果を分類する。
ルール解析において,設定変更可能な解析パラメータとしては,決定木解析と同様に,例えば,詳細さのパラメータや評価指標のパラメータなどがある。詳細さのパラメータの例としては,決定木解析と同様に,cp,minsplit,minbasket などがある。評価指標のパラメータの例としては,決定木解析と同様に,gini,information などがある。
なお,ルール木解析の技術については,次に示す参考文献などでも紹介されている。
〔参考文献5〕山本 泰史,「マーケターのためのデータマイニングヒッチハイクガイド 第14回 決定木」,http://www.teradata-j.com/library/ma/ins_1314a.html
参考文献5は,ルール解析の技術が紹介された文献の一例である。
SVM解析は,説明変数のデータと目的変数のデータとを入力し,非線形関数で,説明変数をもとに目的変数を予測する統計解析法である。本実施の形態では,目的変数は,相のカテゴリ値である。
図16は,本実施の形態によるSVM解析を説明する図である。
図16に示す各グラフは,シミュレーション結果を用いたSVM解析によって得られる,各相の確からしさを示す曲面を等高線で表したグラフである。図16に示す各グラフでは,より太い等高線の内側に向かうほど,より確からしさが高くなっている。
図16(A)は,圧力の値と温度の値とに対して,相が気体である確からしさを示す曲面を表したグラフである。図16(B)は,圧力の値と温度の値とに対して,相が液体である確からしさを示す曲面を表したグラフである。図16(C)は,圧力の値と温度の値とに対して,相が固体である確からしさを示す曲面を表したグラフである。
例えば,図16の各グラフにおいて△で示された点は,どのグラフでも同じ圧力の値と温度の値を持った点である。図16に示す各グラフを見ると,△で示された点では,図16(A)に示す気体の確からしさが,最も高い値となっている。この場合,△で示された点の位置は,気体の相に分類されるという統計解析の結果が得られる。
SVM解析では,シミュレーション結果を用いた統計解析によって,与えられた各説明変数の値に対して最も確からしい相を得るための関数を生成する。
SVM解析において,設定変更可能な解析パラメータとしては,例えば,詳細さのパラメータや内部関数のパラメータなどがある。詳細さは,係数に影響する近似の詳細さを示すパラメータである。近似の詳細さのパラメータの例としては,gamma ,costなどがある。内部関数は,近似に使用する内部関数のパラメータである。内部関数のパラメータの例としては,linear,polynomial,radial,sigmoid などがある。
内部関数を示す各パラメータlinear,polynomial,radial,sigmoid のそれぞれに対応する関数の例は,以下の通りである。
式(1)は,パラメータlinearに対応する関数の例である。式(2)は,パラメータpolynomialに対応する関数の例である。式(3)は,パラメータradialに対応する関数の例である。式(4)は,パラメータsigmoid に対応する関数の例である。
式(1)〜式(4)において,zは,相の予測値を示す。y(i)は,i番目の入力データとなるシミュレーション結果のデータにおける相の値を示す。a(i)は,i番目の係数を示す。d(i,j)は,i番目の入力データとなるシミュレーション結果のデータにおけるj番目の説明変数の値を示す。x(j)は,j番目の説明変数を示す。b,c,f,gは係数を示す。
なお,SVM解析の技術については,次に示す参考文献などでも紹介されている。
〔参考文献6〕金 明哲,「フリーソフトによるデータ解析・マイニング 第31回 Rとカーネル法・サポートベクターマシン」,http://mjin.doshisha.ac.jp/R/SVM.pdf
〔参考文献7〕栗田 多喜夫,「サポートベクターマシン入門」,http://home.hiroshima-u.ac.jp/tkurita/lecture/svm/
〔参考文献8〕赤穂 昭太郎,「サポートベクターマシン」,http://www.ism.ac.jp/  ̄fukumizu/ISM_lecture _2006/svm-ism.pdf
〔参考文献9〕山下 浩,田中 茂,「サポートベクターマシンとその応用」,http://www.msi.co.jp/vmstudio/materials/files/misc/svm.pdf
参考文献6〜9は,SVM解析の技術が紹介された文献の一例である。
ランダムフォレスト解析は,説明変数のデータと目的変数のデータとを入力し,集団解析で,説明変数をもとに目的変数を予測する統計解析法である。本実施の形態では,目的変数は,相のカテゴリ値である。ランダムフォレスト解析は,上述の決定木解析と類似する統計解析法であり,もとのデータからランダムに復元抽出された複数のデータについて決定木解析を行い,それらの統計解析の結果を統合する。
ランダムフォレスト解析において,設定変更可能な解析パラメータとしては,例えば,詳細さのパラメータや乱数関連のパラメータなどがある。詳細さは,決定木の詳細さを示すパラメータである。詳細さのパラメータの例としては,nodesize,mtry,ntree などがある。乱数関連のパラメータは,発生させる乱数に関するパラメータである。乱数関連のパラメータの例としては,乱数の計算方法や,乱数のシードの設定値などがある。
なお,ランダムフォレスト解析の技術については,次に示す参考文献などでも紹介されている。
〔参考文献10〕金 明哲,「フリーソフトによるデータ解析・マイニング 第21回 決定木と集団学習[研究ノート]」,http://mjin.doshisha.ac.jp/R/0504 _21.pdf
〔参考文献11〕金 明哲,「フリーソフトによるデータ解析・マイニング 第32回 Rと集団学習」,http://mjin.doshisha.ac.jp/R/0603 _32.pdf
参考文献10,11は,ランダムフォレスト解析の技術が紹介された文献の一例である。
ここまで紹介した4つの統計解析手法を利用した相の予測において,決定木解析やルール解析を利用した相の予測では,予測精度は粗くなるが,各説明変数の値から相の予測に至る過程が分かりやすいという特徴がある。これに対して,SVM解析を利用した相の予測では,各説明変数の値から相の予測に至る過程が分かりにくいが,相の予測精度が高いという特徴がある。ランダムフォレスト解析を利用した相の予測の特徴は,決定木解析・ルール解析の特徴と,SVM解析の特徴との中間となる。
なお,ここで紹介した4つの統計解析法以外の統計解析法も,当然使用可能である。
次に,図17〜図22のフローチャートを用いて,本実施の形態1の相図生成システム10による処理の流れを説明する。
図17は,本実施の形態1の相図生成システムによる相図生成処理フローチャートである。
相図生成システム10において,点設定部11は,各説明変数の値を組み合わせた点を設定する(ステップS10)。例えば,点設定部11は,各説明変数の値を等間隔に組み合わせた格子点を設定する。設定された点のデータは,設定点情報記憶部110に記録される。
シミュレーション対象点抽出部12は,点設定部11が設定した点からのサンプリングにより,シミュレーション対象点を抽出する(ステップS11)。抽出されたシミュレーション対象点のデータは,シミュレーション対象点情報記憶部120に記録される。
シミュレーション実行部14は,シミュレーション対象点について,各説明変数の値から相を求めるシミュレーションを実行する(ステップS12)。シミュレーション実行部14によるシミュレーション結果は,シミュレーション制御部13により収集され,シミュレーション結果情報記憶部130に記録される。
相図生成システム10は,この時点で,点設定部11が設定したすべての点についてのシミュレーションが実行されているかを判定する(ステップS13)。
設定したすべての点についてのシミュレーションが実行されていれば(ステップS13のYES),相図生成部19は,シミュレーション結果から相図を生成する(ステップS18)。
設定したすべての点についてのシミュレーションが実行されていなければ(ステップ13のNO),予測対象点抽出部15は,点設定部11が設定した点のうち,シミュレーションが実行されていない点を,予測対象点として抽出する(ステップS14)。抽出された予測対象点のデータは,予測対象点情報記憶部140に記録される。
相予測部16は,相予測処理を実行する(ステップS15)。相予測処理については,後述する。相予測処理によって,予測対象点ごとに,相の複数の予測結果が得られる。
予測結果判定部17は,すべての予測対象点について,相の複数の予測結果が一致しているかを判定する(ステップS16)。
すべての予測対象点について相の複数の予測結果が一致していなければ(ステップS16のNO),シミュレーション対象点追加抽出部18は,シミュレーション対象点追加抽出処理を実行する(ステップS17)。シミュレーション対象点追加抽出処理については,後述する。シミュレーション対象点追加抽出処理によって,新たに追加するシミュレーション対象点が抽出される。相図生成システム10は,ステップS12の処理に戻り,新たにシミュレーション対象点を追加した処理に移る。
すべての予測対象点について相の複数の予測結果が一致していれば(ステップS16のYES),相図生成部19は,シミュレーション結果から相図を生成する(ステップS18)。
図18は,本実施の形態の相予測部による相予測処理フローチャート(1)である。
図18に示す相予測処理のフローチャートは,統計解析法が同じで設定する解析パラメータが異なる複数の解析パターンの統計解析を用いて,予測対象点の相の予測を行う処理の流れの例を示す。
相予測部16は,使用する統計解析法において設定する解析パラメータを1つ選択する(ステップS100)。例えば,使用する統計解析法が決定木解析である場合に,相予測部16は,設定する解析パラメータとして,詳細さのパラメータと評価指数のパラメータの組を1つ選択する。なお,ここでは,設定する解析パラメータは,あらかじめ複数のパターンが用意されているものとする。
相予測部16は,選択された解析パラメータを設定して,シミュレーション結果を用いた統計解析を実行する(ステップS101)。シミュレーション結果を用いた統計解析の結果が得られる。
相予測部16は,予測対象点情報記憶部140に記録された予測対象点を,1つ選択する(ステップS102)。相予測部16は,シミュレーション結果を用いた統計解析の結果を利用して,選択された予測対象点の相を予測する(ステップS103)。相予測部16は,相の予測結果を相予測情報記憶部150に記録する(ステップS104)。相予測部16は,予測対象点情報記憶部140に記録されたすべての予測対象点について,処理が終了したかを判定する(ステップS105)。
まだすべての予測対象点について処理が終了していなければ(ステップS105のNO),相予測部16は,ステップS102の処理に戻り,次の予測対象点についての処理に移る。
すべての予測対象点について処理が終了していれば(ステップS105のYES),相予測部16は,予定されたすべての解析パラメータについて,処理が終了したかを判定する(ステップS106)。
まだすべての解析パラメータについて処理が終了していなければ(ステップS106のNO),相予測部16は,ステップS100の処理に戻り,次の解析パラメータを設定した処理に移る。
すべての解析パラメータについて処理が終了していれば(ステップS106のYES),相予測部16は,相予測処理を終了する。
このように,設定する解析パラメータを変えた複数の解析パターンの統計解析の結果を用いて複数回の相の予測を行うことにより,予測対象点ごとに,相の複数の予測結果を得ることができる。
図19は,本実施の形態の相予測部による相予測処理フローチャート(2)である。
図19に示す相予測処理のフローチャートは,統計解析法が異なる複数の解析パターンの統計解析を用いて,予測対象点の相の予測を行う処理の流れの例を示す。
相予測部16は,使用する統計解析法を1つ選択する(ステップS110)。なお,ここでは,使用する統計解析法の解析アルゴリズムは,例えば決定木解析,ルール解析,SVM解析,ランダムフォレスト解析の解析アルゴリズムなど,あらかじめ複数のパターンが用意されているものとする。
相予測部16は,選択された統計解析法を使用して,シミュレーション結果を用いた統計解析を実行する(ステップS111)。設定する解析パラメータについては,任意である。シミュレーション結果を用いた統計解析の結果が得られる。
相予測部16は,予測対象点情報記憶部140に記録された予測対象点を,1つ選択する(ステップS112)。相予測部16は,シミュレーション結果を用いた統計解析の結果を利用して,選択された予測対象点の相を予測する(ステップS113)。相予測部16は,相の予測結果を相予測情報記憶部150に記録する(ステップS114)。相予測部16は,予測対象点情報記憶部140に記録されたすべての予測対象点について,処理が終了したかを判定する(ステップS115)。
まだすべての予測対象点について処理が終了していなければ(ステップS115のNO),相予測部16は,ステップS112の処理に戻り,次の予測対象点についての処理に移る。
すべての予測対象点について処理が終了していれば(ステップS115のYES),相予測部16は,予定されたすべての統計解析法について,処理が終了したかを判定する(ステップS116)。
まだすべての統計解析法について処理が終了していなければ(ステップS116のNO),相予測部16は,ステップS110の処理に戻り,次の統計解析法を使用した処理に移る。
すべての統計解析法について処理が終了していれば(ステップS116のYES),相予測部16は,相予測処理を終了する。
このように,使用する統計解析法を変えた複数の解析パターンの統計解析の結果を用いて複数回の相の予測を行うことにより,予測対象点ごとに,相の複数の予測結果を得ることができる。
図20は,本実施の形態の相予測部による相予測処理フローチャート(3)である。
図20に示す相予測処理のフローチャートは,シミュレーション結果からのランダムな復元抽出により得られた異なるデータに基づいた統計解析を用いて,予測対象点の相の予測を行う処理の流れの例を示す。
相予測部16は,シミュレーション結果情報記憶部130に記録されたシミュレーション結果から所定数のシミュレーション結果をランダムに復元抽出する(ステップS120)。
相予測部16は,抽出されたシミュレーション結果を用いた統計解析を実行する(ステップS121)。使用する統計解析法や設定する解析パラメータについては,任意である。シミュレーション結果を用いた統計解析の結果が得られる。
相予測部16は,予測対象点情報記憶部140に記録された予測対象点を,1つ選択する(ステップS122)。相予測部16は,シミュレーション結果を用いた統計解析の結果を利用して,選択された予測対象点の相を予測する(ステップS123)。相予測部16は,相の予測結果を相予測情報記憶部150に記録する(ステップS124)。相予測部16は,予測対象点情報記憶部140に記録されたすべての予測対象点について,処理が終了したかを判定する(ステップS125)。
まだすべての予測対象点について処理が終了していなければ(ステップS125のNO),相予測部16は,ステップS122の処理に戻り,次の予測対象点についての処理に移る。
すべての予測対象点について処理が終了していれば(ステップS125のYES),相予測部16は,所定回数の処理が終了したかを判定する(ステップS126)。
まだ所定回数の処理が終了していなければ(ステップS126のNO),相予測部16は,ステップS120の処理に戻り,次の抽出されたシミュレーション結果を用いた処理に移る。
所定回数の処理が終了していれば(ステップS126のYES),相予測部16は,相予測処理を終了する。
このように,シミュレーション結果からのランダムな復元抽出により得られた異なるデータに基づいた複数の解析パターンの統計解析の結果を用いて複数回の相の予測を行うことにより,予測対象点ごとに,相の複数の予測結果を得ることができる。
図21は,本実施の形態のシミュレーション対象点追加抽出部によるシミュレーション対象点追加抽出処理フローチャート(1)である。
シミュレーション対象点追加抽出部18は,相予測情報記憶部150を参照し,複数の相の予測結果が一致しない予測対象点を抽出する(ステップS130)。シミュレーション対象点追加抽出部18は,抽出された予測対象点を,追加のシミュレーション対象点とする(ステップS131)。追加のシミュレーション対象点は,シミュレーション対象点情報記憶部120に記録される。
図22は,本実施の形態のシミュレーション対象点追加抽出部によるシミュレーション対象点追加抽出処理フローチャート(2)である。
図22に示すシミュレーション対象点追加抽出処理のフローチャートは,数を限定して追加のシミュレーション対象点を抽出する処理の流れの例を示す。
シミュレーション対象点追加抽出部18は,相予測情報記憶部150を参照し,複数の相の予測結果が一致しない予測対象点を抽出する(ステップS140)。シミュレーション対象点追加抽出部18は,抽出された各予測対象点について,相の予測結果ごとに,その結果を予測した解析パターンの数を集計する(ステップS141)。シミュレーション対象点追加抽出部18は,相の予測結果ごとに集計した解析パターンの数の最大が小さいものから順に,所定数の予測対象点を抽出する(ステップS142)。シミュレーション対象点追加抽出部18は,抽出された予測対象点を,追加のシミュレーション対象点とする(ステップS143)。追加のシミュレーション対象点は,シミュレーション対象点情報記憶部120に記録される。
このように,追加するシミュレーション対象点の数を限定することにより,シミュレーションの実行件数が減り,相図生成の処理時間が短縮される。このとき,相の予想結果が曖昧な予測対象点を優先的に追加するシミュレーション対象点とするので,より有効なシミュレーション結果が得られる。
〔実施の形態2〕
本実施の形態2では,前述の実施の形態1と異なり,最初に説明変数の値を組み合わせた点の設定を行わない。本実施の形態2では,相の予測が行われる際には,その都度,説明変数の値を組み合わせた予測対象点が設定される。
図23は,本実施の形態2による相図生成システムの機能構成例を示す図である。
図23に示す相図生成システム20は,図4に示す相図システムと同様に,相図を生成するコンピュータシステムである。相図生成システム20は,シミュレーション対象点設定部21,シミュレーション制御部22,シミュレーション実行部23,予測対象点設定部24,相予測部25,予測結果判定部26,シミュレーション対象点追加抽出部27,相図生成部28を備える。また,相図生成システム20は,シミュレーション対象点情報記憶部210,シミュレーション結果情報記憶部220,予測対象点情報記憶部230,相予測情報記憶部240等の記憶部を備える。
なお,図23に示す相図生成システム20において,各機能部を接続する実線は主に制御の流れを示し,破線は主にデータの流れを示す。
シミュレーション対象点設定部21は,説明変数の値を組み合わせて,所定数のシミュレーション対象点を設定する。シミュレーション対象点設定部21によるシミュレーション対象点の設定では,単純なランダムサンプリングで各説明変数の値を決めてもよいし,実験計画法やラテン超方格法を用いたサンプリングで各説明変数の値を決めてもよい。シミュレーション対象点設定部21は,設定したシミュレーション対象点のデータを,シミュレーション対象点情報記憶部210に記録する。
シミュレーション対象点情報記憶部210は,シミュレーション対象点情報を記憶する,コンピュータがアクセス可能な記憶部である。シミュレーション対象点情報は,シミュレーション対象点設定部21により設定されたシミュレーション対象点のデータや,シミュレーション対象点追加抽出部27により追加で抽出されたシミュレーション対象点のデータが記録された情報である。
シミュレーション制御部22,シミュレーション実行部23,シミュレーション結果情報記憶部220については,図4に示す相図生成システム10における同名の機能部と同様であるので説明を省略する。
予測対象点設定部24は,説明変数の値を組み合わせて,所定数の予測対象点を設定する。このとき,予測対象点設定部24は,シミュレーション結果情報記憶部220のシミュレーション結果情報を参照し,すでにシミュレーション結果がある点が予測対象点に含まれないようにする。予測対象点設定部24による予測対象点の設定では,単純なランダムサンプリングで各説明変数の値を決めてもよいし,実験計画法やラテン超方格法を用いたサンプリングで各説明変数の値を決めてもよい。予測対象点設定部24は,設定した予測対象点のデータを,予測対象点情報記憶部230に記録する。
予測対象点情報記憶部230は,予測対象点情報を記憶する,コンピュータがアクセス可能な記憶部である。予測対象点情報は,予測対象点設定部24により設定された予測対象点のデータが記録された情報である。
相予測部25,相予測情報記憶部240,予測結果判定部26,シミュレーション対象点追加抽出部27については,図4に示す相図生成システム10における同名の機能部と同様であるので説明を省略する。
相図生成部28は,相の複数の予測結果がすべての予測対象点で一致する場合に,シミュレーション結果情報記憶部220に記憶されたシミュレーション結果情報を参照し,シミュレーション結果に基づいて相図を生成する。
本実施の形態2による相図生成システム20では,あらかじめ格子点などの点を設定しなくても,前述の実施の形態1による相図生成システム10と同様の効果が得られる。すなわち,本実施の形態2の相図生成システム20によって,限られた時間の中で,十分に精度が高い相図を生成することが可能となる。
なお,相の複数の予測結果がすべての予測対象点で一致していなくても,例えば,収集されたシミュレーション結果が所定数以上となったときに,それまでに得られたシミュレーション結果に基づいて,相図生成部28が相図を生成するようにしてもよい。また,シミュレーション対象点を追加しながらシミュレーションを実行し,シミュレーション結果の収集を繰り返した回数が所定回数以上となったときに,それまでに得られたシミュレーション結果に基づいて,相図生成部28が相図を生成するようにしてもよい。
このように,シミュレーションを実行した点の数や,シミュレーション対象点に対するシミュレーションの実行回数を制限することで,限られた時間内での相図の生成が可能となる。この場合でも,得られるシミュレーション結果は,相と相との境界に近い点に集中するため,生成される相図の精度は,限られた時間内で十分に高いものとなる。
図24は,本実施の形態2の相図生成システムによる相図生成処理フローチャート(1)である。
図24に示す相図生成処理のフローチャートは,相の複数の予測結果がすべての予測対象点で一致したときか,収集されたシミュレーション結果が所定数以上となったときに,相図を生成する処理の流れの例を示す。
相図生成システム20において,シミュレーション対象点設定部21は,各説明変数の値を組み合わせたシミュレーション対象点を設定する(ステップS20)。設定されたシミュレーション対象点のデータは,シミュレーション対象点情報記憶部210に記録される。
シミュレーション実行部23は,シミュレーション対象点について,各説明変数の値から相を求めるシミュレーションを実行する(ステップS21)。シミュレーション実行部23によるシミュレーション結果は,シミュレーション制御部22により収集され,シミュレーション結果情報記憶部220に記録される。
相図生成システム20は,この時点までに得られたシミュレーション結果が,所定件数以上であるかを判定する(ステップS22)。
シミュレーション結果が所定件数以上であれば(ステップS22のYES),相図生成部28は,シミュレーション結果から相図を生成する(ステップS27)。
シミュレーション結果が所定件数以上でなければ(ステップS22のNO),予測対象点設定部24は,各説明変数の値を組み合わせた予測対象点を設定する(ステップS23)。このとき,予測対象点設定部24は,すでにシミュレーション結果がある点が予測対象点に含まれないようにする。設定された予測対象点のデータは,予測対象点情報記憶部230に記録される。
相予測部25は,相予測処理を実行する(ステップS24)。相予測処理の例については,図18〜図20に示す通りである。相予測処理によって,予測対象点ごとに,相の複数の予測結果が得られる。
予測結果判定部26は,すべての予測対象点について,相の複数の予測結果が一致しているかを判定する(ステップS25)。
すべての予測対象点について相の複数の予測結果が一致していなければ(ステップS25のNO),シミュレーション対象点追加抽出部27は,シミュレーション対象点追加抽出処理を実行する(ステップS26)。シミュレーション対象点追加抽出処理の例については,図21,図22に示す通りである。シミュレーション対象点追加抽出処理によって,新たに追加するシミュレーション対象点が抽出される。相図生成システム20は,ステップS21の処理に戻り,新たにシミュレーション対象点を追加した処理に移る。
すべての予測対象点について相の複数の予測結果が一致していれば(ステップS25のYES),相図生成部28は,シミュレーション結果から相図を生成する(ステップS27)。
図25は,本実施の形態2の相図生成システムによる相図生成処理フローチャート(2)である。
図25に示す相図生成処理のフローチャートは,相の複数の予測結果がすべての予測対象点で一致したときか,シミュレーション対象点を追加してシミュレーション結果の収集を繰り返した回数が所定回数以上となったときに,相図を生成する処理の流れの例を示す。
相図生成システム20は,カウンタnを0に初期化する(ステップS200)。
シミュレーション対象点設定部21は,各説明変数の値を組み合わせたシミュレーション対象点を設定する(ステップS201)。設定されたシミュレーション対象点のデータは,シミュレーション対象点情報記憶部210に記録される。
シミュレーション実行部23は,シミュレーション対象点について,各説明変数の値から相を求めるシミュレーションを実行する(ステップS202)。シミュレーション実行部23によるシミュレーション結果は,シミュレーション制御部22により収集され,シミュレーション結果情報記憶部220に記録される。
相図生成システム20は,カウンタnが所定数以下であるかを判定する(ステップS203)。
カウンタnが所定数以下でなければ(ステップS203のNO),相図生成部28は,シミュレーション結果から相図を生成する(ステップS209)。
カウンタnが所定数以下であれば(ステップS203のYES),予測対象点設定部24は,各説明変数の値を組み合わせた予測対象点を設定する(ステップS204)。このとき,予測対象点設定部24は,すでにシミュレーション結果がある点が予測対象点に含まれないようにする。設定された予測対象点のデータは,予測対象点情報記憶部230に記録される。
相予測部25は,相予測処理を実行する(ステップS205)。相予測処理の例については,図18〜図20に示す通りである。相予測処理によって,予測対象点ごとに,相の複数の予測結果が得られる。
予測結果判定部26は,すべての予測対象点について,相の複数の予測結果が一致しているかを判定する(ステップS206)。
すべての予測対象点について相の複数の予測結果が一致していなければ(ステップS206のNO),シミュレーション対象点追加抽出部27は,シミュレーション対象点追加抽出処理を実行する(ステップS207)。シミュレーション対象点追加抽出処理の例については,図21,図22に示す通りである。シミュレーション対象点追加抽出処理によって,新たに追加するシミュレーション対象点が抽出される。相図生成システム20は,カウンタnをインクリメントし(ステップS208),ステップS202の処理に戻り,新たにシミュレーション対象点を追加した処理に移る。
すべての予測対象点について相の複数の予測結果が一致していれば(ステップS206のYES),相図生成部28は,シミュレーション結果から相図を生成する(ステップS209)。
以上,本実施の形態について説明したが,本発明はその主旨の範囲において種々の変形が可能であることは当然である。
例えば,上記の実施の形態2で説明した,収集されたシミュレーション結果が所定数以上となった場合に,相図生成部28がそれまでに得られたシミュレーション結果に基づいて相図を生成する例を,上記の実施の形態1の例に適用することも可能である。例えば,実施の形態1において,相図生成部19が,収集されたシミュレーション結果が所定数以上となった場合に,それまでに得られたシミュレーション結果に基づいて相図を生成するようにしてもよい。
同様に,上記の実施の形態2で説明した,シミュレーション結果の収集を繰り返した回数が所定回数以上となった場合に,相図生成部28がそれまでに得られたシミュレーション結果に基づいて相図を生成する例についても,実施の形態1の例に適用可能である。
また,例えば,本実施の形態では,主に,温度,圧力などの物性条件を説明変数とし,固体,液体,気体などの物質の三態を相とする相図の生成の例について説明したが,他の相図の生成についても,本実施の形態による技術を適用することが可能である。
例えば,本実施の形態による技術を,温度などの物性条件を説明変数とし,磁性の有無などを相とする相図の生成に適用してもよい。
〔参考文献12〕笠間 敏博,井戸垣 俊弘,「ベクトルプロセッサを利用した磁性体の連続相転移の研究」,http://www.cc.kyushu-u.ac.jp/publish/kohobkno/genkoVol6No2/05-kasama-e.pdf
参考文献12は,温度などの物性条件に応じた磁性の有無などの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,温度などの物性条件を説明変数とし,常伝導,超伝導などを相とする相図の生成に適用してもよい。
〔参考文献13〕大野 隆央,胡 暁,小野寺 秀博,「ナノシミュレーション科学」,http://e-materials.net/outlook/2005HTML/2005cap/outlook2005-chap04-14.pdf
〔参考文献14〕胡 暁,“3D anisotropic,frustrated XY hamiltonian as a model of vortex states of high- T c superconductors ”,http://repository.kulib.kyoto-u.ac.jp/dspace/bitstream/2433/97420/1/KJ00004704969.pdf
参考文献13,14は,温度などの物性条件に応じた常伝導,超伝導などの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,交通状態についての条件を説明変数とし,交通流が円滑か,渋滞かを相とする相図の生成に適用してもよい。
〔参考文献15〕西田 和馬,「最適速度を用いた交通流の一様流・渋滞流間相転移」,http://www.ei.fukui-nct.ac.jp/sotsu/2009/20-nishida.pdf
〔参考文献16〕西成 活裕,「事故駆動粒子系の統計力学的手法による新しい渋滞シミュレーションの開発」,http://www.aas-ri.co.jp/news/SDPsoft.pdf
〔参考文献17〕杉山 雄規,「自己駆動粒子集団流の現象 交通流から群形成へ」,http://www.px.tsukuba.ac.jp/home/tcm/kyoshida/winter2004/Sugiyama-1.pdf
〔参考文献18〕酒井 聡士,西成 活裕,飯田 晋司,「確率的に拡張された交通流セルオートマトンの相転移ライン導出」,http://www.riam.kyushu-u.ac.jp/fluid/meeting/18ME-S5/papers/Article _No_07.pdf
参考文献15〜18は,交通状態についての条件に応じた交通流が円滑か,渋滞かの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,温度,圧力などの物性条件を説明変数とし,クォーク,グルーオン,プラズマなどを相とする相図の生成に適用してもよい。
〔参考文献19〕大西 明,「2兆度・1000兆g/ccの世界 --- クォーク物質への相転移--- 」,http://www2.yukawa.kyoto-u.ac.jp/  ̄gcoesymp/2008/presentations/20090218-ohnishi.pdf
参考文献19は,温度,圧力などの物性条件に応じたクォーク,グルーオン,プラズマの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,温度,合金の配合割合などの物性条件を説明変数とし,固体,液体,気体,結晶構造などを相とする相図の生成に適用してもよい。
〔参考文献20〕野本 祐春,「計算状態図連携マルチフェーズフィールドモデルによる合金凝固組織形成シミュレーション」,http://www.engineering-eye.com/rpt/r067 _kikaiCD200811/pdf/r _kikaiCD200811.pdf
参考文献20は,温度,合金の配合割合などの物性条件に応じた固体,液体,気体,結晶構造の相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,高分子の温度,混合割合などの物性条件を説明変数とし,ゲル化する,ゲル化しないなどを相とする相図の生成に適用してもよい。
〔参考文献21〕田中 文彦,岡田 幸典,「会合性高分子の相図理論 − I. 非ゲル化系−」,http://wwwsoc.nii.ac.jp/jscta/j+/Jour _J/pdf/32/32-4-178.pdf
参考文献21は,高分子の温度,混合割合などの物性条件に応じたゲル化する,ゲル化しないなどの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,温度,溶質の割合などの物性条件を説明変数とし,溶解する,溶解しないなどを相とする相図の生成に適用してもよい。
〔参考文献22〕小山 美香, 片岡 洋右,「NaCl水溶液における相転移の分子動力学シミュレーション」,http://www.cms.k.hosei.ac.jp/paper/vol23/vol23_04.pdf
参考文献22は,温度,溶質の割合などの物性条件に応じた溶解する,溶解しないなどの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,温度,圧力などの物性条件を説明変数とし,結晶構造の種類などを相とする相図の生成に適用してもよい。
〔参考文献23〕斎木 麻弥,片岡 洋右,「窒素の相転移シミュレーション」,http://www.cms.k.hosei.ac.jp/paper/vol23/vol23_06.pdf
参考文献23は,温度,圧力などの物性条件に応じた結晶構造の種類などの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,角度などの物性条件を説明変数とし,液晶の状態などを相とする相図の生成に適用してもよい。
〔参考文献24〕松山 明彦,「ソフトマターにおける液晶の基本概念」,http://iona.bio.kyutech.ac.jp/ ̄aki/pdf/ekisyo0607.pdf
参考文献24は,角度などの物性条件に応じた液晶の状態などの相を求めるシミュレーションに関連する技術が紹介された文献の一例である。
また,例えば,本実施の形態による技術を,温度などの物性条件を説明変数とし,結晶,アモルファスなどを相とする相図の生成に適用してもよい。
また,例えば,本実施の形態による技術を,温度などの物性条件を説明変数とし,金属,半導体,絶縁体などを相とする相図の生成に適用してもよい。
以上説明した本実施の形態の特徴を列挙すると,以下の通りとなる。
(付記1)
コンピュータに,
説明変数の値を組み合わせた複数の点を設定する手順と,
設定した前記複数の点から,シミュレーションによって相を求める対象の点であるシミュレーション対象点を抽出する手順と,
前記シミュレーション対象点についてのシミュレーション結果を収集する手順と,
設定した前記複数の点から,前記シミュレーション結果が収集された点以外の点を,相を予測する対象の点である予測対象点として抽出する手順と,
前記シミュレーション結果を用いた,解析パターンを変えた複数の統計解析の結果を利用して,前記予測対象点ごとに,複数回の相の予測を行い,相の予測結果を複数取得する手順と,
前記予測対象点から相の複数の予測結果が一致しない点を抽出し,抽出された点をシミュレーション対象点とする手順と,
前記予測対象点において相の複数の予測結果がすべての点で一致する場合に,または収集された前記シミュレーションの結果が所定数以上となった場合に,前記シミュレーション結果に基づいて相図を生成する手順とを
実行させるための相図生成プログラム。
(付記2)
前記解析パターンを変えた複数の統計解析は,統計解析法が同じで解析パラメータが異なる複数の統計解析を含む
ことを特徴とする付記1に記載された相図生成プログラム。
(付記3)
前記統計解析法は,決定木解析,ルール解析,サポートベクトルマシン解析またはランダムフォレスト解析のいずれかである
ことを特徴とする付記2に記載された相図生成プログラム。
(付記4)
前記解析パターンを変えた複数の統計解析は,統計解析法が異なる複数の統計解析を含む
ことを特徴とする付記1から付記3までのいずれかに記載された相図生成プログラム。
(付記5)
前記解析パターンを変えた複数の統計解析は,前記シミュレーション結果からの復元抽出により得られた異なるデータに基づいた複数の統計解析を含む
ことを特徴とする付記1から付記4までのいずれかに記載された相図生成プログラム。
(付記6)
前記抽出された点をシミュレーション対象点とする手順は,前記予測対象点から相の複数の予測結果が一致しない点を抽出し,該抽出された各点について,相の予測結果ごとにその結果を予測した解析パターンの数を集計し,該抽出された点のうち,相の予測結果ごとに集計した解析パターンの数の最大が小さいものから順に所定数の点を,シミュレーション対象点とする
ことを特徴とする付記1から付記5までのいずれかに記載された相図生成プログラム。
(付記7)
コンピュータに,
説明変数の値を組み合わせた,シミュレーションによって相を求める対象の点であるシミュレーション対象点を設定する手順と,
前記シミュレーション対象点についてのシミュレーション結果を収集する手順と,
説明変数の値を組み合わせた,相を予測する対象の点である予測対象点を設定する手順と,
前記シミュレーション結果を用いた,解析パターンを変えた複数の統計解析の結果を利用して,前記予測対象点ごとに,複数回の相の予測を行い,相の予測結果を複数取得する手順と,
前記予測対象点から相の複数の予測の結果が一致しない点を抽出し,抽出された点をシミュレーション対象点とする手順と,
前記予測対象点において相の複数の予測結果がすべての点で一致する場合に,または収集された前記シミュレーションの結果が所定数以上となった場合に,前記シミュレーション結果に基づいて相図を生成する手順とを
実行させるための相図生成プログラム。
(付記8)
前記相図を生成する手順は,さらに,前記シミュレーション対象点についてのシミュレーション結果の収集を行った回数が所定回数以上となったときに,前記シミュレーション結果に基づいて相図を生成する
ことを特徴とする付記7に記載された相図生成プログラム。
(付記9)
説明変数の値を組み合わせた複数の点を設定する点設定部と,
設定した前記複数の点から,シミュレーションによって相を求める対象の点であるシミュレーション対象点を抽出するシミュレーション対象点抽出部と,
前記シミュレーション対象点について,前記説明変数から相を求めるシミュレーションを実行するシミュレーション実行部と,
前記シミュレーション対象点についてのシミュレーション結果を収集するシミュレーション制御部と,
設定した前記複数の点から,前記シミュレーション結果が収集された点以外の点を,相を予測する対象の点である予測対象点として抽出する予測対象点抽出部と,
前記シミュレーション結果を用いた,解析パターンを変えた複数の統計解析の結果を利用して,前記予測対象点ごとに,複数回の相の予測を行い,相の予測結果を複数取得する相予測部と,
前記予測対象点から相の複数の予測の結果が一致しない点を抽出し,抽出された点をシミュレーション対象点とするシミュレーション対象点追加抽出部と,
前記予測対象点において相の複数の予測結果がすべての点で一致する場合に,または収集された前記シミュレーションの結果が所定数以上となった場合に,前記シミュレーション結果に基づいて相図を生成する相図生成部とを備える
ことを特徴とする相図生成システム。
(付記10)
説明変数の値を組み合わせた,シミュレーションによって相を求める対象の点であるシミュレーション対象点を設定するシミュレーション対象点設定部と,
前記シミュレーション対象点について,前記説明変数から相を求めるシミュレーションを実行するシミュレーション実行部と,
前記シミュレーション対象点についてのシミュレーション結果を収集するシミュレーション制御部と,
説明変数の値を組み合わせた,相を予測する対象の点である予測対象点を設定する予測対象点設定部と,
前記シミュレーション結果を用いた,解析パターンを変えた複数の統計解析の結果を利用して,前記予測対象点ごとに,複数回の相の予測を行い,相の予測結果を複数取得する相予測部と,
前記予測対象点から相の複数の予測の結果が一致しない点を抽出し,抽出された点をシミュレーション対象点とするシミュレーション対象点追加抽出部と,
前記予測対象点において相の複数の予測結果がすべての点で一致する場合に,または収集された前記シミュレーションの結果が所定数以上となった場合に,前記シミュレーション結果に基づいて相図を生成する相図生成部とを備える
ことを特徴とする相図生成システム。
(付記11)
コンピュータが,
説明変数の値を組み合わせた複数の点を設定する過程と,
設定した前記複数の点から,シミュレーションによって相を求める対象の点であるシミュレーション対象点を抽出する過程と,
前記シミュレーション対象点についてのシミュレーション結果を収集する過程と,
設定した前記複数の点から,前記シミュレーション結果が収集された点以外の点を,相を予測する対象の点である予測対象点として抽出する過程と,
前記シミュレーション結果を用いた,解析パターンを変えた複数の統計解析の結果を利用して,前記予測対象点ごとに,複数回の相の予測を行い,相の予測結果を複数取得する過程と,
前記予測対象点から相の複数の予測の結果が一致しない点を抽出し,抽出された点をシミュレーション対象点とする過程と,
前記予測対象点において相の複数の予測結果がすべての点で一致する場合に,または収集された前記シミュレーションの結果が所定数以上となった場合に,前記シミュレーション結果に基づいて相図を生成する過程とを実行する
ことを特徴とする相図生成方法。
(付記12)
コンピュータが,
説明変数の値を組み合わせた,シミュレーションによって相を求める対象の点であるシミュレーション対象点を設定する過程と,
前記シミュレーション対象点についてのシミュレーション結果を収集する過程と,
説明変数の値を組み合わせた,相を予測する対象の点である予測対象点を設定する過程と,
前記シミュレーション結果を用いた,解析パターンを変えた複数の統計解析の結果を利用して,前記予測対象点ごとに,複数回の相の予測を行い,相の予測結果を複数取得する過程と,
前記予測対象点から相の複数の予測の結果が一致しない点を抽出し,抽出された点をシミュレーション対象点とする過程と,
前記予測対象点において相の複数の予測結果がすべての点で一致する場合に,または収集された前記シミュレーションの結果が所定数以上となった場合に,前記シミュレーション結果に基づいて相図を生成する過程とを実行する
ことを特徴とする相図生成方法。