一个例子理解伞形抽样

伞形抽样(Umbrella Sampling)是分子动力学和Monte Carlo模拟中常用的增强抽样方法,主要解决在势能高处样本数量难以提高,与之相关的物理量难以准确求得的问题。

本文以一维Monte Carlo求单粒子在谐振子势能面中坐标分布的过程,来解释伞形抽样的算法。

问题描述

在温度$\beta=1$时求单个粒子在一维谐振子势能面$U=x^2$中的坐标$x$的概率分布。研究的范围是$[-5,5]$。

由直接的Monte Carlo模拟(范围[-5,5],步长0.5,循环次数10000×1000),可以得到粒子坐标$x$的概率分布如下图。

我们将通过伞形抽样方法重现这一概率分布。

伞形抽样

首先我们将坐标$x$的研究范围[-5,5]划分为5个等长的区间:[-5,-3],[-3,-1],[-1,1],[1,3],[3,5]。

然后我们分别在每个区间上运行Markov Chain Monte Carlo模拟。在Metropolis抽样原则下,移动到区间外的试探应当被拒绝并在该步保持不动以满足细致平衡原则,相当于在原来的谐振子势上面叠加了一个无限深势阱。这里的模拟参数是步长0.5,循环次数各为1000×1000。

此时我们得到5段分布。如果直接画在一张图里,效果如下。

显然各段分布是不能直接连接的,因为本来粒子在各个区间的分布就不是相同的:显然[-1,1]上应该有的分布要比[-5,-3]多。

拼接这些各段的分布数据要用到伞形抽样的核心思想。对于相邻两个区间重叠的区间(可能为一段,也可能为一个点。这里都是一个点),同一点在不同区间得到的概率应该成比例。也就是说,重叠区间中各点在两侧区间的概率的比值是联系两个相邻区间的概率曲线的桥梁,像伞覆盖在两个区间之间

对于当前问题,我们直接用区间交点在两个区间的概率之比来缩放后一区间的所有点的概率。之后再经过归一化,得到如下图的坐标分布。

最终结果与直接的Monte Carlo方法结果一致。

分子动力学中的伞形抽样简介

在分子动力学中,伞形抽样通常将原来的势能面分割为多个区间,并且叠加一些偏势(如简谐势)能够使采样点尽可能保留在各个区间内部。最后再通过加权柱状图分析法(WHAM)消除偏采样,将概率分布“接”起来,得到正确的统计结果。

关于分子动力学中的伞形抽样方法,参考资料4非常详细,值得一读。

参考资料

  1. Vlugt, Thijs, et al. 6.2-Umbrella Sampling. Lab Course MolSim Exercises 2014.
  2. Frenkel, Daan, and Berend Smit. Understanding molecular simulation: from algorithms to applications. Vol. 1. Elsevier, 2001.
  3. Torrie, Glenn M., and John P. Valleau. “Nonphysical sampling distributions in Monte Carlo free-energy estimation: Umbrella sampling.” Journal of Computational Physics 23.2 (1977): 187-199. (原始文献)
  4. Kästner, Johannes. “Umbrella sampling.” Wiley Interdisciplinary Reviews: Computational Molecular Science 1.6 (2011): 932-942.