next up previous contents index
Next: RF及びEF最適化におけるヘシアン行列の初期値 Up: 構造最適化 Previous: 最急降下法   Contents   Index

EF、BFGS、RF、DIIS最適化

「Opt」は頑健な方法ですが、一般的に収束速度は遅いと言えます。 より高速な方法として、準ニュートン法に基づいた構造最適化手法が利用可能です。 デカルト座標内で実行される固有ベクトル追跡(EF)法 [63]、 Broyden-Fletcher-Goldfarb-Shanno (BFGS)法 [65]、 合理的関数(RF)法 [64]、そして反復部分空間(DIIS)法 [62]がサポートされています。 EFおよびRF法では、近似ヘシアンはBFGS法により更新されます。 キーワード「MD.Type」により、「Opt」、「EF」、「BFGS」、「RF」、「DIIS」の一つを選択して下さい。 関連キーワードは次の通りになります。
   MD.Type                     EF         # Opt|DIIS|BFGS|RF|EF
   MD.Opt.DIIS.History          3         # default=3
   MD.Opt.StartDIIS             5         # default=5
   MD.Opt.EveryDIIS            200        # default=200
   MD.maxIter                  100        # default=1
   MD.Opt.criterion          1.0e-4       # default=0.0003 (Hartree/Bohr)
特に、これらの準ニュートン法に基づいた構造最適化法は次の2つのキーワードにより制御されます。
   MD.Opt.DIIS.History      3       # default=3
   MD.Opt.StartDIIS         5       # default=5
キーワード「MD.Opt.DIIS.History」は近似ヘシアンを更新するための過去の 履歴ステップ数を指定します。デフォルト値は3です。また、「EF」、「BFGS」、「RF」、「DIIS」を開始する構造最適化ステップを キーワード「MD.Opt.StartDIIS」により指定します。 これらの方法を開始する前の構造最適化ステップは、最急降下法により実行されます。デフォルト値は5です。

最適化の初期ステップは初期構造における力の最大値(絶対値)を参照することで自動的に調整されます。 図 10 は、分子やバルクにおいて力の最大値(絶対値)が0.0003 Hartree/Bohr以下に到達するまでの構造最適化ステップ数を示しています。ここに示されるように、EFおよびBFGS法も同様な性能を示しているものの、ほとんどの場合に RF法が最もロバストで効率的な方法です。 これらの計算に使用された入力ファイルと出力ファイルは「work/geoopt_example/」ディレクトリ内にあります。

また、これらの準ニュートン法により、構造が最小停留点よりもむしろ鞍点に収束される可能性もあることに 注意すべきです。これは、準ニュートン法の使用が開始された時の構造が変曲点に達しない場合に起こり得ます。 そのような場合には、準ニュートン法に移る前に、構造を最急降下法により十分に最適化するべきです。 対処方法は、「MD.Opt.StartDIIS」に対して大きな値を使用するだけです。十分な収束に対して 多数の反復ステップが要求される系では、ファイル「System.Name.dat#」を使用して計算を再スタートすることも必要かも知れません。ここで「System.Name」は入力ファイルで指定した「System.Name」です。

一般的に、「scf.energy.cutoff」に大きな値を用いることでエネルギー曲線が滑らかになり、 結果として収束性を早めることができます。これは分子固体などの弱く相互作用している系において特に顕著です。 このような弱く相互作用している系においては、300-400Ry程度の大きな「scf.energy.cutoff」の使用が推奨されます。


Figure 10: (a)分子系および(b)バルク系に対する構造最適化の反復回数。 収束判定条件は原子に働く力の絶対最大値が $3 \times 10^{-4}$ Hartree/Bohr以下。
\includegraphics[width=9.0cm]{geoopt2.eps}