(57)【要約】【課題】本発明は、原子ダイナミクスをシミュレーションするための方法及び装置を提供する。【解決手段】かかる方法は、特定のシナリオにおける複数の所定原子の初期位置を設定し；初期位置に基づいて、特定のシナリオに対して設定されるLAMMPSを用いて、複数の所定原子の第一時間シーケンス中の各時刻の位置をリアル位置として計算し；初期位置に基づいて、敵対的生成ネットワークを用いて、複数の所定原子の第一時間シーケンス中の各時刻の位置を予測位置として計算し；同じ時刻のリアル位置及び予測位置に基づいて、敵対的生成ネットワークの設定を改良し；複数のシミュレーション待ち原子の初期位置を設定し；及び、改良後の敵対的生成ネットワークを用いて、複数のシミュレーション待ち原子の第二時間シーケンス中の各時刻の位置を計算することを含む。【選択図】図１
2020087456.tif 000002
【特許請求の範囲】
【請求項１】
原子ダイナミクスをシミュレーションするための方法であって、
特定のシナリオにおける複数の所定原子の初期位置を設定し；
前記初期位置に基づいて、前記特定のシナリオに対して設定されるLAMMPS（Large-scale  Atomic/Molecular  Massively  Parallel  Simulator）を用いて、前記複数の所定原子の第一時間シーケンス中の各時刻の位置をリアル位置として計算し；
前記初期位置に基づいて、敵対的生成ネットワークを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の位置を予測位置として計算し；
同じ時刻のリアル位置及び予測位置に基づいて、前記敵対的生成ネットワークを改良し；
複数のシミュレーション待ち原子の初期位置を設定し；及び
改良後の敵対的生成ネットワークを用いて、前記複数のシミュレーション待ち原子の第二時間シーケンス中の各時刻の位置を計算することを含む、方法。
【請求項２】
請求項1に記載の方法であって、さらに、
前記敵対的生成ネットワーク中の生成ユニットを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の予測位置を計算し；
前記敵対的生成ネットワーク中の判別ユニットを用いて、前記予測位置が同じ時刻のリアル位置である確率を確定し；及び
同じ時刻の予測位置及びリアル位置に基づいて、前記生成ユニット及び前記判別ユニットを、前記判別ユニットにより確定される確率が50%になるまで改良することを含む、方法。
【請求項３】
請求項2に記載の方法であって、さらに、
前記判別ユニットにより、前記予測位置が同じ時刻のリアル位置であるかを確定することができるよう、前記判別ユニットを改良することを含む、方法。
【請求項４】
請求項3に記載の方法であって、さらに、
前記判別ユニットにより、前記生成ユニットにより計算される予測位置が同じ時刻のリアル位置であるかを確定することができないよう、前記生成ユニットを改良することを含む、方法。
【請求項５】
請求項3に記載の方法であって、さらに、
同じ時刻のリアル位置及び予測位置間の平均二乗誤差を最小化することができるよう、前記生成ユニットを改良することを含む、方法。
【請求項６】
請求項1に記載の方法であって、さらに、
前記複数のシミュレーション待ち原子の前記第二時間シーケンス中の各時刻の位置を分析することで、前記複数のシミュレーション待ち原子からなる物質の性質を確定することを含む、方法。
【請求項７】
請求項1に記載の方法であって、
前記生成ユニット及び前記判別ユニットは、ニューラルネットワークにより実現される、方法。
【請求項８】
原子ダイナミクスをシミュレーションするための装置であって、
記憶器と、
１つ又は複数の処理器と、を含み、
前記処理器は、
特定のシナリオにおける複数の所定原子の初期位置を設定し；
前記初期位置に基づいて、前記特定のシナリオに対して設定されるLAMMPS（Large-scale  Atomic/Molecular  Massively  Parallel  Simulator）を用いて、前記複数の所定原子の第一時間シーケンス中の各時刻の位置をリアル位置として計算し；
前記初期位置に基づいて、敵対的生成ネットワークを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の位置を予測位置として計算し；
同じ時刻のリアル位置及び予測位置に基づいて、前記敵対的生成ネットワークを改良し；
複数のシミュレーション待ち原子の初期位置を設定し；及び
改良後の敵対的生成ネットワークを用いて、前記複数のシミュレーション待ち原子の第二時間シーケンス中の各時刻の位置を計算するように構成される、装置。
【請求項９】
請求項8に記載の装置であって、
前記処理器は、さらに、
前記敵対的生成ネットワーク中の生成ユニットを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の予測位置を計算し；
前記敵対的生成ネットワーク中の判別ユニットを用いて、前記予測位置が同じ時刻のリアル位置である確率を確定し；及び
同じ時刻の予測位置及びリアル位置に基づいて、前記生成ユニット及び前記判別ユニットを、前記判別ユニットにより確定される確率が50%になるまで改良するように構成される、装置。
【請求項１０】
請求項9に記載の装置であって、
前記処理器は、さらに、
前記判別ユニットにより、前記予測位置が同じ時刻のリアル位置であるかを確定することができるよう、前記判別ユニットを改良し；及び
前記判別ユニットにより、前記生成ユニットにより計算される予測位置が同じ時刻のリアル位置であるかを確定することができないよう、前記生成ユニットを改良するように構成される、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原子ダイナミクスをシミュレーションするための方法及び装置に関し、特に、ディープニューラルネットワークを用いて原子ダイナミクスをシミュレーションする方法及び装置に関する。
【背景技術】
【０００２】
分子動力学シミュレーションが原子及び分子の物理的運動を研究するために用いられる。コンピュータ技術の進歩に伴って、分子動力学シミュレーション及びその応用が益々重要視されるようになる。それは、一方では、本質的にメカニズム及び規則を定量的に探索することができ、他方では、研究開発が経済的、効率的及び予測可能な方向に発展するように促進することができる。
【０００３】
既知の分子動力学シミュレーションのためのツールとして、Sandia  National  Laboratoriesにより開発された大規模原子分子並列シミュレーション器（LAMMPS（Large-scale  Atomic/Molecular  Massively  Parallel  Simulator））がある。LAMMPSは、気相、液相、固相の形態下の百万レベルの原子分子体系をサポートすることができる。また、LAMMPSは、空間分解技術を用いてシミュレーション域を小さい三次元サブ域に分割し、各サブ域が１つの処理器に割り当てられて処理してもらう。しかし、LAMMPSのシミュレーションは、依然として、大量の計算リソース及び時間を要する。
【０００４】
また、ディープニューラルネットワークに基づく方法が近年、幅広く応用されている。このような方法では、通常、データ集合に基づいてディープニューラルネットワークを訓練し、その後、訓練済みのニューラルネットワークモデルを実際の応用に設定する。
【０００５】
なお、上述の背景技術についての紹介は、本発明の技術案を明確且つ完全に説明し、また、当業者がそれを理解しやすいためのものである。これらの技術案は、本発明の背景技術の一部に記述されているため、当業者にとって周知であると解釈すべきではない。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、ディープニューラルネットワークを用いて分子動力学シミュレーションを行う技術案を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一側面によれば、原子ダイナミクスをシミュレーションするための方法が提供され、該方法は、特定のシナリオにおける複数の所定原子の初期位置を設定し；前記初期位置に基づいて、前記特定のシナリオに対して設定されるLAMMPSを用いて、前記複数の所定原子の第一時間シーケンス中の各時刻の位置をリアル（real）位置として計算し；前記初期位置に基づいて、敵対的生成ネットワーク（generative  adversarial  networks）を用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の位置を予測位置として計算し；同じ時刻のリアル位置及び予測位置に基づいて、前記敵対的生成ネットワークの設定を改良し；複数のシミュレーション待ち原子の初期位置を設定し；及び、改良後の敵対的生成ネットワークを用いて、前記複数のシミュレーション待ち原子の第二時間シーケンス中の各時刻の位置を計算することを含む。
【０００８】
本発明の他の側面によれば、原子ダイナミクスをシミュレーションするための装置が提供され、それは、記憶器、及び、１つ又は複数の処理器を含み、前記処理器は、次のように構成され、即ち、特定のシナリオにおける複数の所定原子の初期位置を設定し；前記初期位置に基づいて、前記特定のシナリオに対して設定されるLAMMPSを用いて、前記複数の所定原子の第一時間シーケンス中の各時刻の位置をリアル位置として計算し；前記初期位置に基づいて、敵対的生成ネットワークを基づいて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の位置を予測位置として計算し；同じ時刻のリアル位置及び予測位置に基づいて、前記敵対的生成ネットワークの設定を改良し；複数のシミュレーション待ち原子の初期位置を設定し；及び、改良後の敵対的生成ネットワークを用いて、前記複数のシミュレーション待ち原子の第二時間シーケンス中の各時刻の位置を計算する。
【０００９】
本発明の他の側面によれば、プログラムを記憶した記憶媒体が提供され、前記プログラムは、コンピュータにより実行されるときに、コンピュータに、上述のような、原子ダイナミクスをシミュレーションするための方法を実現することができる。
【００１０】
なお、「含む／有する」のような用語は、本明細書に使用されるときに、特徴、要素、ステップ、又はアセンブルの存在を指すが、１つの又は複数の他の特徴、要素、ステップ、又はアセンブリの存在又は付加を排除しないということも指す。
【図面の簡単な説明】
【００１１】
【図１】原子ダイナミクスをシミュレーションする方法のフローチャートである。
【図２】敵対的生成ネットワークを訓練するプロセスのフローチャートである。
【図３】敵対的生成ネットワークのブロック図である。
【図４】図2におけるステップS240の処理を示す図である。
【図５】ニューラルネットワークにより実現される生成ユニットを示す図である。
【図６】ニューラルネットワークにより実現される判別ユニットを示す図である。
【図７】訓練後の敵対的生成ネットワークを用いて原子ダイナミクスをシミュレーションするプロセスのフローチャートである。
【図８】コンピュータハードウェアのブロック図である。
【発明を実施するための形態】
【００１２】
以下、添付した図面を参照しながら、本発明を実施するための好適な実施形態を詳しく説明する。
【００１３】
図1は、本発明による原子ダイナミクスのシミュレーション方法のフローチャートである。
【００１４】
図1では、ステップS110-S130により、敵対的生成ネットワーク（GAN）に対しての訓練を行い、その後、ステップS140において訓練後のGANを実際のシミュレーションに適用する。分かりやすくするために、以下、訓練段階に係る原子を“訓練原子”と称し、実際シミュレーション段階に係る原子を“シミュレーション待ち原子”と称する。
【００１５】
具体的に言えば、ステップS110では、LAMMPSを用いて、訓練原子の初期時刻の後の複数の時刻の位置を、訓練原子の対応する時刻のリアル位置として計算する。ここでは、原子の位置が原子の三次元座標により表されても良く、好ましくは、原子の三次元座標が区間[0，1]に正規化される。
【００１６】
ステップS120では、GANを用いて、訓練原子の同じ複数の時刻の位置を、訓練原子の対応する時刻の予測位置として計算する。なお、GANは、ディープニューラルネットワークにより実現することができる。
【００１７】
ステップS130では、訓練原子の同一時刻のリアル位置及び予測位置に基づいて、GANを訓練する。
【００１８】
その後、ステップS140では、訓練済みのGANを用いて、実際のシミュレーション対象としての原子の未来時刻の位置を計算する。計算結果に基づいて、シミュレーション待ち原子の未来の任意時刻の位置を知ることができるため、該原子の未来の運動状態を把握することができる。
【００１９】
なお、ここで、原子の未来位置を原子ダイナミクスの１つの具体例としたが、原子ダイナミクスのシミュレーションは、原子の未来位置のシミュレーションに限られない。例えば、原子の核電荷に対してシミュレーションを行っても良い。
【００２０】
図1に示すように、本発明による方法は、訓練後のディープニューラルネットワークを用いて、原子ダイナミクスをシミュレーションすることができる。よって、従来のツール例えばLAMMPSに比べ、本発明による方法は、実際のシミュレーションの実施にあたって、計算量が小さく、複雑度が低いなどの利点を有するので、より少ない計算リソース及び時間を要する。
【００２１】
以下、図2-図4に基づいてGANの訓練プロセスを詳しく説明する。図2は、GANの訓練処理のフローチャートである。
【００２２】
図2に示すように、まず、ステップS210では、特定のシナリオにおける複数の訓練原子の初期時刻の初期位置を設定する。例えば、銅の微視的性質などに対してシミュレーション及び研究を行う場合、初期温度、圧力、密度などの状態に基づいて複数の銅原子の初期位置を設定することができる。
【００２３】
ステップS220では、初期位置に基づいて、LAMMPSを用いて複数の訓練原子の初期時刻の後の複数の時刻のリアル位置を計算し、例えば、所定間隔で複数の時刻を設定しても良く、複数の時刻を不均一に設定しても良い。
【００２４】
ステップS230では、初期位置に基づいて、GANを用いて、複数の訓練原子の同じ複数の時刻の予測位置を取得する。このときのGANがまだ訓練されてないから、GANの初期設定を採用しても良い。
【００２５】
その後、ステップS240では、ステップS220及びS230で得られた同一時刻のリアル位置及び予測位置に基づいてGANを訓練することで、GANにより計算される予測位置が、できるだけ、LAMMPSにより計算されるリアル位置に接近するようにさせる。予測位置がリアル位置とほぼ一致していると判断するときに、GANの訓練を終了する。
【００２６】
図3は、GANのブロック図であり、図4は、図2におけるステップS240の具体的な処理を示す図である。
【００２７】
図3に示すように、GANは、生成ユニット310及び判別ユニット320を含む。ここで、生成ユニット310及び判別ユニット320は、ともに、ニューラルネットワークにより実現することができる。生成ユニット310は、入力された訓練原子の初期位置（又は、現在の位置）に基づいて、次の１つの時刻の予測位置を生成する。判別ユニット320は、生成ユニット310からの予測位置を受信し、そして、受信した予測位置が前記次の１つの時刻のリアル位置である確率を確定する。確定した確率が50%よりも大きいときに、判別ユニット320は、予測位置がリアル位置であることを示す判断結果“1”を出力する。確定した確率が50%よりも小さいときに、判別ユニット320は、予測位置がリアル位置でないことを示す判断結果“0”を出力する。
【００２８】
判別ユニット320の操作の目的は、できるだけ、受信した予測位置が同一時刻のリアル位置であるかを判別することにある。確定した確率が大きいほど（50%より大きい）、判別ユニット320は、予測位置がリアル位置であることを肯定する。確定した確率が小さいほど（50%よりも小さい）、判別ユニット320は、予測位置がリアル位置でないことを肯定する。
【００２９】
生成ユニット310の操作の目的は、アル位置にできるだけ接近する予測位置を生成することで、判別ユニット320が予測位置とリアル位置とを判別し難いようにさせることにある。換言すると、判別ユニット320により、受信した予測位置がリアル位置であるかを確定し難いときに、即ち、判別ユニット320により確定された確率が50%であり又は50%に近いときに、生成ユニット310は、理想の状態に達している。
【００３０】
以上の目的に基づいて、GANを構成する生成ユニット310及び判別ユニット320に対して訓練を行う。図4に示すように、まず、ステップS410では、判別ユニット320に対して訓練を行うことで、それにより、生成ユニット310から受信した予測位置が同一時刻のリアル位置であるかを判別し得るようにさせ、換言すると、それが50%よりも大きく又は50%よりも小さい確率を確定し得るようにさせる。
【００３１】
例えば、m個の訓練原子が存在し、且つLAMMPSを用いて計算された該m個の訓練原子のリアル位置がx1，x2，...，xmにより表れるとすると、以下の損失関数LDを最大化する方式で判別ユニット320を訓練することができる。
【数１】
2020087456.tif 000003
【００３２】
そのうち、xiは、第i個目の訓練原子のリアル位置（i=1，2，…，m）を示し、G(xi)は、生成ユニット310により生成される第i個目の訓練原子の予測位置を示し、D()は、括弧内の位置がリアル位置である確率を示す。
【００３３】
その後、ステップS420では、生成ユニット310に対して訓練を行うことで、判別ユニット320が、生成ユニット310により生成される予測位置が同一時刻のリアル位置であるかを確定することができないようにさせ、換言すると、判別ユニット320により確定される確率が50%であり又は50%に近いようにさせる。
【００３４】
具体的に言えば、以下の損失関数LGを最小化する方式で生成ユニット310を訓練することができる。
【数２】
2020087456.tif 000004
【００３５】
そのうち、G(xi)は、生成ユニット310により生成される第i個目の訓練原子の予測位置を表し、D(G(xi))は、判別ユニット320により確定される、該予測位置がリアル位置である確率を表し、LMSEは、同一時刻のリアル位置及び予測位置間の平均二乗誤差（mean  square  error）を表し、λは、重みパラメータであり、例えば、0.5、1などの値を取っても良い。式（2）から分かるように、損失関数LGを最小化するために、LMSEを最小化する必要がある。また、以下の式（3）を用いてLMSEを計算することができる。
【数３】
2020087456.tif 000005
【００３６】
ステップS410及びS420を繰り返して実行することで、交互反復（alternating  iterative）により生成ユニット310及び判別ユニット320を訓練することができる。判別ユニット320が確定した確率が50%であり又は50%に近いときに、判別ユニット320が予測位置とリアル位置とを判別することができないことを示すので、生成ユニット310が生成した予測位置と、LAMMPSが計算したリアル位置とが一致していると見なしても良い。このときに、生成ユニット310が、LAMMPSの出力と同じ出力を生成することができるため、LAMMPSの代わりに、実際のシミュレーションに適用することができる。このときに、GANの訓練を終了する。
【００３７】
図5及び図6は、それぞれ、生成ユニット310及び判別ユニット320のニューラルネットワークの構造を示す図である。図中のサークルは、神経元（ニューロン）を表す。図5に示すように、生成ユニット310の入力端で、ある原子の時刻tにおける位置座標x(t)を入力し、生成ユニット310の出力端で、該原子の時刻t+nにおける予測位置座標x’(t+n)を出力する。図6に示すように、判別ユニット320の入力端で、生成ユニット310により出力された予測位置座標x’(t+n)、及び、LAMMPSにより計算された該原子の時刻t+nにおけるリアル位置座標x(t+n)を入力し、判別ユニット320の出力端で、判別結果“0”又は“1”を出力する。
【００３８】
なお、上述のように、ここで、原子の位置を原子ダイナミクスの一例としたが、原子ダイナミクスのシミュレーションは、原子の未来位置のシミュレーションに限られず、例えば、さらに、原子の核電荷などの特徴をシミュレーションすることもできる。よって、図5及び図6に示される位置座標x(t)、x’(t+n)などは、さらに、原子の他の特徴を含むように拡張することができる。
【００３９】
以下、図7を参照しながら、訓練済みのGANを実際のシミュレーションに適用することを説明する。図7は、訓練済みのGANを用いて、原子ダイナミクスをシミュレーションするプロセスのフローチャートである。
【００４０】
ステップS710では、実際のシミュレーション対象としての複数の原子の初期時刻の初期位置を設定する。その後、ステップS720では、初期位置に基づいて、訓練後のGANを用いて、シミュレーション待ち原子の初期時刻の後の１つ又は複数の時刻の位置をシミュレーション結果として取得する。なお、実際のニーズに応じて、取得しようとするシミュレーション結果の１つ又は複数の時刻を設定することができる。
【００４１】
ステップS730では、シミュレーションの結果を分析することで、これらの原子からなる物質の性質を確定する。例えば、ステップS720のシミュレーション結果として、複数の銅原子の複数の時刻の位置を得たとする場合、ステップS730では、これらの銅原子の各時刻の位置を分析することで、銅原子の運動軌跡、運動方向、速度などの情報を知り、そして、これに基づいて、これらの銅原子からなる銅の温度、形態、密度などの特徴を把握することができる。
【００４２】
以上、具体的な実施例をもとに、本発明の技術案を詳細に説明した。本発明の技術案は、GANを訓練することで、LAMMPSなどのシミュレーション結果と同じシミュレーション結果を得ることができ、また、実際の応用では、計算量が小さく、複雑度が低いなどの利点を有するため、必要な計算リソース及び時間が少なくなる。
【００４３】
また、本発明の上述の実施例による方法などは、ソフトウェアにより実現されても良く、ハードェアにより実現されてもよく、ハードェア及びソフトウェアの組み合わせにより実現されても良い。本発明は、このようなコンピュータ可読プログラムにも関し、即ち、前記プログラムは、ロジック部品により実行されるときに、前記ロジック部品に、上述の装置又は構成要素を実現させることができ、又は、前記ロジック部品に、上述の方法又はそのステップを実現させることができる。さらに、本発明は、上述のプログラムを記憶した記憶媒体、例えば、ハードディスク、磁気ディスク、光ディスク、ＤＶＤ、フレッシュメモリなどにも関する。
【００４４】
図8は、プログラムに基づいて本発明による方法を実行するコンピュータハードウェアの例示ブッロク図である。該コンピュータハードウェアは、本発明による、原子ダイナミクスをシミュレーションするための装置の一例に過ぎない。
【００４５】
図8に示すように、コンピュータ800では、中央処理装置（CPU）801、ROM  802及びRAM  803がバス804を経由して互いに接続される。
【００４６】
また、次のような部品も入力／出力インターフェース805に接続され、即ち、入力部806（キーボード、マウスなどを含む）、出力部807（表示器、例えば、CRT、LCDなど、及びスピーカーなどを含む）、記憶部808（ハードディスクなどを含む）、及び通信部809（ネットワーク・インターフェース・カード、例えば、LANカード、モデムなどを含む）というような部品である。通信部809は、ネットワーク、例えば、インターネットを経由して通信処理を行う。なお、必要に応じて、ドライブ810を入力／出力インターフェース805に接続させても良い。取り外し可能な媒体811、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体記憶器などは、必要に応じて、ドライブ810にセットされ、その中から読み出されたコンピュータプログラムが必要に応じて記憶部808にインスタールされるようにさせることができる。
【００４７】
また、本発明は、さらに、マシン可読指令コードを含むプログラムプロダクトを提供する。このような指令コードは、マシンにより読み取られて実行されるときに、上述の本開示の実施例における方法を実行することができる。それ相応に、このようなプログラムプロダクトをキャリー（carry）する、例えば、磁気ディスク（フロッピーディスク（登録商標）を含む）、光ディスク（CD-ROM及びDVDを含む）、光磁気ディスク（MD（登録商標）を含む）、及び半導体記憶器などの各種記憶媒体も、本発明に含まれる。
【００４８】
上述の記憶媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体記憶器などを含んでも良いが、これらに限定されない。
【００４９】
また、本発明の上述の方法の各操作（処理）は、各種のマシン可読記憶媒体に記憶されているコンピュータ実行可能なプログラムの方式で実現することもできる。
【００５０】
また、以上の実施例などに関し、さらに以下のように付記を開示する。
【００５１】
（付記1）
原子ダイナミクスをシミュレーションするための方法であって、
特定のシナリオにおける複数の所定原子の初期位置を設定し；
前記初期位置に基づいて、前記特定のシナリオに対して設定される大規模原子分子並列シミュレーション器（LAMMPS）を用いて、前記複数の所定原子の第一時間シーケンス中の各時刻の位置をリアル位置として計算し；
前記初期位置に基づいて、敵対的生成ネットワークを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の位置を予測位置として計算し；
同じ時刻のリアル位置及び予測位置に基づいて、前記敵対的生成ネットワークを改良し；
複数のシミュレーション待ち原子の初期位置を設定し；及び
改良後の敵対的生成ネットワークを用いて、前記複数のシミュレーション待ち原子の第二時間シーケンス中の各時刻の位置を計算することを含む、方法。
【００５２】
（付記2）
付記1に記載の方法であって、さらに、
前記敵対的生成ネットワーク中の生成ユニットを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の予測位置を計算し；
前記敵対的生成ネットワーク中の判別ユニットを用いて、前記予測位置が同じ時刻のリアル位置である確率を確定し；及び
同じ時刻の予測位置及びリアル位置に基づいて、前記生成ユニット及び前記判別ユニットを、前記判別ユニットにより確定される確率が50%になるまで改良することを含む、方法。
【００５３】
（付記3）
付記2に記載の方法であって、さらに、
前記判別ユニットにより、前記予測位置が同じ時刻のリアル位置であるかを確定することができるよう、前記判別ユニットを改良することを含む、方法。
【００５４】
（付記4）
付記3に記載の方法であって、さらに、
前記判別ユニットにより、前記生成ユニットにより計算される予測位置が同じ時刻のリアル位置であるかを確定することができないよう、前記生成ユニットを改良することを含む、方法。
【００５５】
（付記5）
付記3に記載の方法であって、さらに、
同じ時刻のリアル位置及び予測位置間の平均二乗誤差を最小化することができるよう、前記生成ユニットを改良することを含む、方法。
【００５６】
（付記6）
付記1に記載の方法であって、さらに、
前記複数のシミュレーション待ち原子の前記第二時間シーケンス中の各時刻の位置を分析することで、前記複数のシミュレーション待ち原子からなる物質の性質を確定することを含む、方法。
【００５７】
（付記7）
付記1に記載の方法であって、
前記生成ユニット及び前記判別ユニットは、ニューラルネットワークにより実現される、方法。
【００５８】
（付記8）
原子ダイナミクスをシミュレーションするための装置であって、
記憶器、及び、１つ又は複数の処理器を含み、
前記処理器は、
特定のシナリオにおける複数の所定原子の初期位置を設定し；
前記初期位置に基づいて、前記特定のシナリオに対して設定される大規模原子分子並列シミュレーション器（LAMMPS）を用いて、前記複数の所定原子の第一時間シーケンス中の各時刻の位置をリアル位置として計算し；
前記初期位置に基づいて、敵対的生成ネットワークを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の位置を予測位置として計算し；
同じ時刻のリアル位置及び予測位置に基づいて、前記敵対的生成ネットワークを改良し；
複数のシミュレーション待ち原子の初期位置を設定し；及び
改良後の敵対的生成ネットワークを用いて、前記複数のシミュレーション待ち原子の第二時間シーケンス中の各時刻の位置を計算する、装置。
【００５９】
（付記9）
付記8に記載の装置であって、
前記処理器は、さらに、
前記敵対的生成ネットワーク中の生成ユニットを用いて、前記複数の所定原子の前記第一時間シーケンス中の各時刻の予測位置を計算し；
前記敵対的生成ネットワーク中の判別ユニットを用いて、前記予測位置が同じ時刻のリアル位置である確率を確定し；及び
同じ時刻の予測位置及びリアル位置に基づいて、前記生成ユニット及び前記判別ユニットを、前記判別ユニットにより確定される確率が50%になるまで改良する、装置。
【００６０】
（付記10）
付記9に記載の装置であって、
前記処理器は、さらに、
前記判別ユニットにより、前記予測位置が同じ時刻のリアル位置であるかを確定することができるよう、前記判別ユニットを改良し；及び
前記判別ユニットにより、前記生成ユニットにより計算される予測位置が同じ時刻のリアル位置であるかを確定することができないよう、前記生成ユニットを改良する、装置。
【００６１】
（付記11）
プログラムを記憶した記憶媒体であって、
前記プログラムは、コンピュータにより実行されるときに、コンピュータに、付記1-7の原子ダイナミクスをシミュレーションするための方法を実現させる、記憶媒体。
【００６２】
以上、本発明の好ましい実施形態を説明したが、本発明はこの実施形態に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は本発明の技術的範囲に属する。
【図１】
2020087456.tif 000006
【図２】
2020087456.tif 000007
【図３】
2020087456.tif 000008
【図４】
2020087456.tif 000009
【図５】
2020087456.tif 000010
【図６】
2020087456.tif 000011
【図７】
2020087456.tif 000012
【図８】
2020087456.tif 000013